math.exp on complex, imaginary part

Time bar (total: 7.3s)

start0.0ms (0%)

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

analyze0.0ms (0%)

Memory
0.7MiB live, 0.7MiB 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.1s (15.4%)

Memory
-2.5MiB live, 1 417.0MiB allocated; 378ms collecting garbage
Samples
667.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 420.0ms
ival-sin: 220.0ms (52.4% of total)
ival-exp: 119.0ms (28.3% of total)
ival-mult: 69.0ms (16.4% of total)
ival-true: 6.0ms (1.4% of total)
ival-assert: 3.0ms (0.7% of total)
adjust: 2.0ms (0.5% of total)
Bogosity

explain69.0ms (1%)

Memory
3.5MiB live, 99.8MiB allocated; 15ms 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
37.0ms512×0valid
Compiler

Compiled 31 to 19 computations (38.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 24.0ms
ival-sin: 16.0ms (67% of total)
ival-exp: 4.0ms (16.8% of total)
ival-mult: 3.0ms (12.6% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess195.0ms (2.7%)

Memory
29.1MiB live, 252.6MiB allocated; 58ms 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.1MiB live, 0.1MiB allocated; 0ms collecting garbage
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.1MiB live, 1.1MiB 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)

simplify304.0ms (4.2%)

Memory
-21.2MiB live, 326.3MiB allocated; 49ms 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

localize22.0ms (0.3%)

Memory
26.7MiB live, 26.7MiB allocated; 0ms 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
17.0ms256×0valid
Compiler

Compiled 13 to 7 computations (46.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-sin: 6.0ms (58.2% of total)
ival-exp: 2.0ms (19.4% of total)
ival-mult: 2.0ms (19.4% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series3.0ms (0%)

Memory
3.7MiB live, 3.7MiB 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))

simplify204.0ms (2.8%)

Memory
6.2MiB live, 274.9MiB allocated; 59ms 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)

rewrite234.0ms (3.2%)

Memory
-21.1MiB live, 274.3MiB allocated; 53ms 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)))))

eval30.0ms (0.4%)

Memory
21.2MiB live, 66.2MiB allocated; 4ms collecting garbage
Compiler

Compiled 3 626 to 539 computations (85.1% saved)

prune20.0ms (0.3%)

Memory
-27.8MiB live, 19.2MiB allocated; 2ms 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
72.6%
(*.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))
100.0%
(*.f64 (exp.f64 re) (sin.f64 im))
70.7%
(*.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))
64.7%
(*.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))
51.6%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
51.6%
#s(approx (* (exp re) (sin im)) (fma.f64 (sin.f64 im) re (sin.f64 im)))
67.6%
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
50.9%
#s(approx (* (exp re) (sin im)) (sin.f64 im))
Compiler

Compiled 169 to 133 computations (21.3% saved)

simplify247.0ms (3.4%)

Memory
20.6MiB live, 266.9MiB allocated; 55ms 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
(sin.f64 im)
cost-diff0
(/.f64 (sin.f64 im) (-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re))))
cost-diff4
(*.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))
cost-diff5
(-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re)))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
027144
045138
175132
2157128
3519125
43465125
08125125
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.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 (sin.f64 im) (-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re))))
(sin.f64 im)
im
(-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re)))
(*.f64 #s(literal 4 binary64) (cosh.f64 re))
#s(literal 4 binary64)
(cosh.f64 re)
re
(*.f64 #s(literal 4 binary64) (sinh.f64 re))
(sinh.f64 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 (/.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 (exp.f64 re) (sin.f64 im))
(/.f64 (sin.f64 im) (-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re))))
(*.f64 (/.f64 (sin.f64 im) #s(literal 4 binary64)) (exp.f64 re))
(sin.f64 im)
im
(-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re)))
(/.f64 #s(literal 4 binary64) (exp.f64 re))
(*.f64 #s(literal 4 binary64) (cosh.f64 re))
(*.f64 (cosh.f64 re) #s(literal 4 binary64))
#s(literal 4 binary64)
(cosh.f64 re)
re
(*.f64 #s(literal 4 binary64) (sinh.f64 re))
(*.f64 (sinh.f64 re) #s(literal 4 binary64))
(sinh.f64 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

localize160.0ms (2.2%)

Memory
16.0MiB live, 146.7MiB allocated; 25ms 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))
accuracy14.516623007190804
#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))
accuracy14.596093862554657
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
accuracy0.0
(exp.f64 re)
accuracy0.01171875
(*.f64 (exp.f64 re) im)
accuracy16.981253718453562
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
accuracy0.0
(sin.f64 im)
accuracy14.618857592823458
#s(approx (* (exp re) (sin im)) (sin.f64 im))
accuracy0.00390625
(sinh.f64 re)
accuracy0.010097509768442016
(*.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))
accuracy0.01171875
(/.f64 (sin.f64 im) (-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re))))
accuracy0.24675448002244119
(-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re)))
Samples
83.0ms185×0valid
35.0ms67×0exit
15.0ms5exit
1.0ms2valid
1.0ms1valid
Compiler

Compiled 117 to 23 computations (80.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 74.0ms
ival-sub: 23.0ms (31.3% of total)
ival-mult: 13.0ms (17.7% of total)
ival-sin: 9.0ms (12.2% of total)
ival-cosh: 9.0ms (12.2% of total)
ival-sinh: 7.0ms (9.5% of total)
ival-add: 5.0ms (6.8% of total)
ival-exp: 4.0ms (5.4% of total)
ival-div: 2.0ms (2.7% of total)
adjust: 1.0ms (1.4% of total)
exact: 1.0ms (1.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series55.0ms (0.8%)

Memory
-31.1MiB live, 66.5MiB allocated; 27ms collecting garbage
Counts
16 → 54
Calls
Call 1
Inputs
(-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re)))
(*.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 (sin.f64 im) (-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re))))
(sin.f64 im)
#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))
(sinh.f64 re)
Outputs
4
(+ 4 (* -4 re))
(+ 4 (* re (- (* 2 re) 4)))
(+ 4 (* re (- (* re (+ 2 (* -2/3 re))) 4)))
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (+ (sin im) (* -4 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* -4 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (* -4 (+ (* -1/4 (sin im)) (* 1/8 (sin im)))))))))
(* 1/4 (sin im))
(+ (* 1/4 (sin im)) (* 1/4 (* re (sin im))))
(+ (* 1/4 (sin im)) (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (sin im)))))
(+ (* 1/4 (sin im)) (* re (- (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (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)))))))
im
(+ im (* im re))
(+ im (* re (+ im (* 1/2 (* im re)))))
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
1
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(+ 1 (* 1/2 re))
re
(* re (+ 1 (* 1/6 (pow re 2))))
(* re (+ 1 (* (pow re 2) (+ 1/6 (* 1/120 (pow re 2))))))
(* re (+ 1 (* (pow re 2) (+ 1/6 (* (pow re 2) (+ 1/120 (* 1/5040 (pow re 2))))))))
(- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))
(* 4 (/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(* (exp re) (sin im))
(* im (exp re))
(exp 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)))
(* 1/2 (- (exp re) (/ 1 (exp re))))
(* 4 (/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(* im (+ (* -2/3 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(* im (+ (* (pow im 2) (- (* 1/30 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/1260 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/30 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(* im (+ (* -1/6 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/120 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp 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
16.0ms
re
@-inf
((- (* 4 (cosh re)) (* 4 (sinh re))) (* (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) 4) (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) (sin im) (* (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) (sinh re))
11.0ms
im
@inf
((- (* 4 (cosh re)) (* 4 (sinh re))) (* (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) 4) (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) (sin im) (* (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) (sinh re))
10.0ms
re
@inf
((- (* 4 (cosh re)) (* 4 (sinh re))) (* (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) 4) (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) (sin im) (* (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) (sinh re))
4.0ms
im
@-inf
((- (* 4 (cosh re)) (* 4 (sinh re))) (* (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) 4) (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) (sin im) (* (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) (sinh re))
4.0ms
im
@0
((- (* 4 (cosh re)) (* 4 (sinh re))) (* (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) 4) (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) (sin im) (* (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) (sinh re))

simplify216.0ms (3%)

Memory
16.2MiB live, 253.7MiB allocated; 22ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0215921
1812805
23281764
08357696
Stop Event
iter limit
node limit
Counts
54 → 52
Calls
Call 1
Inputs
4
(+ 4 (* -4 re))
(+ 4 (* re (- (* 2 re) 4)))
(+ 4 (* re (- (* re (+ 2 (* -2/3 re))) 4)))
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (+ (sin im) (* -4 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* -4 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (* -4 (+ (* -1/4 (sin im)) (* 1/8 (sin im)))))))))
(* 1/4 (sin im))
(+ (* 1/4 (sin im)) (* 1/4 (* re (sin im))))
(+ (* 1/4 (sin im)) (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (sin im)))))
(+ (* 1/4 (sin im)) (* re (- (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (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)))))))
im
(+ im (* im re))
(+ im (* re (+ im (* 1/2 (* im re)))))
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
1
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(+ 1 (* 1/2 re))
re
(* re (+ 1 (* 1/6 (pow re 2))))
(* re (+ 1 (* (pow re 2) (+ 1/6 (* 1/120 (pow re 2))))))
(* re (+ 1 (* (pow re 2) (+ 1/6 (* (pow re 2) (+ 1/120 (* 1/5040 (pow re 2))))))))
(- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))
(* 4 (/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(* (exp re) (sin im))
(* im (exp re))
(exp 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)))
(* 1/2 (- (exp re) (/ 1 (exp re))))
(* 4 (/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(* im (+ (* -2/3 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(* im (+ (* (pow im 2) (- (* 1/30 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/1260 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/30 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(* im (+ (* -1/6 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/120 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp 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
4
#s(literal 4 binary64)
(+ 4 (* -4 re))
(fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))
(+ 4 (* re (- (* 2 re) 4)))
(fma.f64 (fma.f64 #s(literal 2 binary64) re #s(literal -4 binary64)) re #s(literal 4 binary64))
(+ 4 (* re (- (* re (+ 2 (* -2/3 re))) 4)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) re #s(literal 2 binary64)) re #s(literal -4 binary64)) re #s(literal 4 binary64))
(sin im)
(sin.f64 im)
(+ (sin im) (* re (sin im)))
(fma.f64 (sin.f64 im) re (sin.f64 im))
(+ (sin im) (* re (+ (sin im) (* -4 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))))))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (sin.f64 im)) re (sin.f64 im))
(+ (sin im) (* re (+ (sin im) (* re (+ (* -4 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (* -4 (+ (* -1/4 (sin im)) (* 1/8 (sin im)))))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/2 binary64) (sin.f64 im) (*.f64 (*.f64 (*.f64 #s(literal -1/24 binary64) (sin.f64 im)) re) #s(literal -4 binary64))) re (sin.f64 im)) re (sin.f64 im))
(* 1/4 (sin im))
(*.f64 #s(literal 1/4 binary64) (sin.f64 im))
(+ (* 1/4 (sin im)) (* 1/4 (* re (sin im))))
(*.f64 (fma.f64 #s(literal 1/4 binary64) re #s(literal 1/4 binary64)) (sin.f64 im))
(+ (* 1/4 (sin im)) (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (sin im)))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sin.f64 im)) re (*.f64 #s(literal 1/4 binary64) (sin.f64 im))) re (*.f64 #s(literal 1/4 binary64) (sin.f64 im)))
(+ (* 1/4 (sin im)) (* re (- (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (sin im)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (sin.f64 im)) re (*.f64 #s(literal 1/8 binary64) (sin.f64 im))) re (*.f64 #s(literal 1/4 binary64) (sin.f64 im))) re (*.f64 #s(literal 1/4 binary64) (sin.f64 im)))
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (sin.f64 im)) re (sin.f64 im))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
(fma.f64 (fma.f64 (*.f64 (sin.f64 im) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re (sin.f64 im)) re (sin.f64 im))
im
(+ im (* im re))
(fma.f64 im re im)
(+ im (* re (+ im (* 1/2 (* im re)))))
(fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re 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))
re
(* re (+ 1 (* 1/6 (pow re 2))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/6 binary64) re)
(* re (+ 1 (* (pow re 2) (+ 1/6 (* 1/120 (pow re 2))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal 1/6 binary64)) re)
(* re (+ 1 (* (pow re 2) (+ 1/6 (* (pow re 2) (+ 1/120 (* 1/5040 (pow re 2))))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 re re) #s(literal 1/120 binary64)) (*.f64 re re) #s(literal 1/6 binary64)) re)
(- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))
(*.f64 (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64))
(* 4 (/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(*.f64 (/.f64 (sin.f64 im) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) #s(literal 2 binary64))
(/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(/.f64 (/.f64 (sin.f64 im) #s(literal 2 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 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 (+ 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))
(* 1/2 (- (exp re) (/ 1 (exp re))))
(*.f64 (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))) #s(literal 1/2 binary64))
(* 4 (/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(*.f64 (/.f64 im (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) #s(literal 2 binary64))
(* im (+ (* -2/3 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(*.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) #s(literal 2 binary64)) #s(literal -2/3 binary64) #s(literal 2 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) im)
(* im (+ (* (pow im 2) (- (* 1/30 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(fma.f64 (/.f64 im (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) #s(literal 2 binary64) (*.f64 (pow.f64 im #s(literal 3 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/30 binary64) im) im #s(literal -2/3 binary64)) (*.f64 (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64)))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/1260 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/30 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) #s(literal 2 binary64)) #s(literal -1/1260 binary64) #s(literal 1/60 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) im) im (/.f64 #s(literal -1/3 binary64) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))))) (*.f64 im im) (/.f64 #s(literal 2 binary64) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))))) im)
(/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(/.f64 (/.f64 im #s(literal 2 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))))
(* im (+ (* -1/6 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im) (*.f64 (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64)))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64))) (/.f64 (/.f64 im #s(literal 2 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/120 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) #s(literal -1/10080 binary64) (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64)))) (/.f64 (/.f64 im #s(literal 2 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))))
(* 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 (*.f64 im im) #s(literal 1/120 binary64) #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 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) 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 (*.f64 im im) #s(literal 1/120 binary64) #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 #s(literal -1/6 binary64) (*.f64 im im) #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)

rewrite52.0ms (0.7%)

Memory
19.8MiB live, 63.7MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
027115
045109
1125103
0797103
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
16 → 110
Calls
Call 1
Inputs
(-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re)))
(*.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 (sin.f64 im) (-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re))))
(sin.f64 im)
#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))
(sinh.f64 re)
Outputs
(*.f64 (exp.f64 (neg.f64 re)) #s(literal 4 binary64))
(*.f64 #s(literal 4 binary64) (exp.f64 (neg.f64 re)))
(/.f64 (fma.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) #s(literal 64 binary64) (pow.f64 (*.f64 #s(literal -4 binary64) (sinh.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) (*.f64 #s(literal -4 binary64) (sinh.f64 re))))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 4 binary64) (exp.f64 re)) (*.f64 (exp.f64 (neg.f64 re)) #s(literal 4 binary64)))) (neg.f64 (*.f64 #s(literal 4 binary64) (exp.f64 re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (exp.f64 re)) (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 2 binary64)))))
(/.f64 (*.f64 (*.f64 #s(literal 4 binary64) (exp.f64 re)) (*.f64 (exp.f64 (neg.f64 re)) #s(literal 4 binary64))) (*.f64 #s(literal 4 binary64) (exp.f64 re)))
(/.f64 (-.f64 (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (exp.f64 re)) (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 2 binary64))))
(fma.f64 #s(literal -4 binary64) (sinh.f64 re) (*.f64 (cosh.f64 re) #s(literal 4 binary64)))
(fma.f64 (sinh.f64 re) #s(literal -4 binary64) (*.f64 (cosh.f64 re) #s(literal 4 binary64)))
(fma.f64 (cosh.f64 re) #s(literal 4 binary64) (*.f64 (neg.f64 (sinh.f64 re)) #s(literal 4 binary64)))
(fma.f64 (cosh.f64 re) #s(literal 4 binary64) (*.f64 #s(literal -4 binary64) (sinh.f64 re)))
(fma.f64 #s(literal 4 binary64) (cosh.f64 re) (*.f64 (neg.f64 (sinh.f64 re)) #s(literal 4 binary64)))
(fma.f64 #s(literal 4 binary64) (cosh.f64 re) (*.f64 #s(literal -4 binary64) (sinh.f64 re)))
(-.f64 (/.f64 (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (exp.f64 re))) (/.f64 (pow.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (exp.f64 re))))
(-.f64 (/.f64 (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 3 binary64)) (fma.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (exp.f64 re)) (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) #s(literal 3 binary64)) (fma.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (exp.f64 re)) (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 2 binary64)))))
(-.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) (*.f64 (sinh.f64 re) #s(literal 4 binary64)))
(+.f64 (*.f64 #s(literal -4 binary64) (sinh.f64 re)) (*.f64 (cosh.f64 re) #s(literal 4 binary64)))
(+.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) (*.f64 (neg.f64 (sinh.f64 re)) #s(literal 4 binary64)))
(+.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) (*.f64 #s(literal -4 binary64) (sinh.f64 re)))
(*.f64 (/.f64 (*.f64 (sin.f64 im) #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 4 binary64) (exp.f64 re)) (*.f64 (exp.f64 (neg.f64 re)) #s(literal 4 binary64)))) (*.f64 #s(literal 4 binary64) (exp.f64 re)))
(*.f64 (/.f64 (*.f64 (sin.f64 im) #s(literal 4 binary64)) (-.f64 (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) #s(literal 3 binary64)))) (fma.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (exp.f64 re)) (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 im) #s(literal 4 binary64)) (/.f64 #s(literal 4 binary64) (exp.f64 (neg.f64 re))))
(*.f64 (/.f64 (/.f64 (sin.f64 im) #s(literal 4 binary64)) (exp.f64 (neg.f64 re))) #s(literal 4 binary64))
(*.f64 (sin.f64 im) (/.f64 #s(literal 4 binary64) (*.f64 (exp.f64 (neg.f64 re)) #s(literal 4 binary64))))
(*.f64 #s(literal 4 binary64) (/.f64 (/.f64 (sin.f64 im) #s(literal 4 binary64)) (exp.f64 (neg.f64 re))))
(/.f64 (/.f64 (*.f64 (sin.f64 im) #s(literal 4 binary64)) #s(literal 4 binary64)) (exp.f64 (neg.f64 re)))
(/.f64 (*.f64 (neg.f64 (sin.f64 im)) #s(literal 4 binary64)) (*.f64 #s(literal -4 binary64) (exp.f64 (neg.f64 re))))
(/.f64 (*.f64 #s(literal 4 binary64) (neg.f64 (sin.f64 im))) (*.f64 #s(literal -4 binary64) (exp.f64 (neg.f64 re))))
(/.f64 (neg.f64 (*.f64 (sin.f64 im) #s(literal 4 binary64))) (*.f64 #s(literal -4 binary64) (exp.f64 (neg.f64 re))))
(/.f64 (*.f64 (sin.f64 im) #s(literal 4 binary64)) (*.f64 (exp.f64 (neg.f64 re)) #s(literal 4 binary64)))
(*.f64 (/.f64 (sin.f64 im) (*.f64 (*.f64 #s(literal 4 binary64) (exp.f64 re)) (*.f64 (exp.f64 (neg.f64 re)) #s(literal 4 binary64)))) (*.f64 #s(literal 4 binary64) (exp.f64 re)))
(*.f64 (/.f64 (sin.f64 im) (-.f64 (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) #s(literal 3 binary64)))) (fma.f64 (*.f64 (sinh.f64 re) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (exp.f64 re)) (pow.f64 (*.f64 (cosh.f64 re) #s(literal 4 binary64)) #s(literal 2 binary64))))
(/.f64 (/.f64 (sin.f64 im) #s(literal 4 binary64)) (exp.f64 (neg.f64 re)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 im))) (neg.f64 (*.f64 #s(literal -4 binary64) (exp.f64 (neg.f64 re)))))
(/.f64 (neg.f64 (sin.f64 im)) (*.f64 #s(literal -4 binary64) (exp.f64 (neg.f64 re))))
(/.f64 (sin.f64 im) (*.f64 (exp.f64 (neg.f64 re)) #s(literal 4 binary64)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 im)) (*.f64 (exp.f64 (neg.f64 re)) #s(literal 4 binary64))))
(neg.f64 (/.f64 (sin.f64 im) (*.f64 #s(literal -4 binary64) (exp.f64 (neg.f64 re)))))
(sin.f64 im)
#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 im (cosh.f64 re) (*.f64 im (sinh.f64 re)))
(fma.f64 (cosh.f64 re) im (*.f64 (sinh.f64 re) im))
(+.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)))))
(/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 re))) #s(literal 2 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))
(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))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 re))) #s(literal -2 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 re)) #s(literal 2 binary64))
(sinh.f64 re)
(-.f64 (/.f64 (exp.f64 re) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 re)) #s(literal 2 binary64)))

eval50.0ms (0.7%)

Memory
-7.1MiB live, 55.7MiB allocated; 16ms collecting garbage
Compiler

Compiled 3 523 to 693 computations (80.3% saved)

prune19.0ms (0.3%)

Memory
-19.9MiB live, 23.1MiB allocated; 8ms collecting garbage
Pruning

15 alts after pruning (11 fresh and 4 done)

PrunedKeptTotal
New16011171
Fresh202
Picked145
Done101
Total16415179
Accuracy
100.0%
Counts
179 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
56.0%
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
64.7%
(*.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))
51.6%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
28.5%
(*.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)))
17.4%
(*.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))
58.1%
#s(approx (* (exp re) (sin im)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
67.6%
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
41.2%
#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))
37.4%
#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))
24.6%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
50.9%
#s(approx (* (exp re) (sin im)) (sin.f64 im))
39.4%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
35.6%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)))
30.0%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 im re im)))
27.9%
#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 438 to 311 computations (29% saved)

simplify150.0ms (2.1%)

Memory
12.2MiB live, 196.1MiB allocated; 49ms 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)) #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
#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)))
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 (*.f64 im re) #s(literal 1/2 binary64) im)
cost-diff0
(fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)
cost-diff0
#s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im))
cost-diff0
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)))
cost-diff0
#s(approx (exp re) #s(literal 1 binary64))
cost-diff0
(*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)
cost-diff0
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
cost-diff0
(fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64))
cost-diff0
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re))
cost-diff0
#s(approx (* (exp re) (sin im)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
cost-diff2
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im)
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
035242
058242
195242
2245238
3898238
44520238
08104238
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im)
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re))
(fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64))
#s(literal -1/6 binary64)
(*.f64 im im)
im
#s(literal 1 binary64)
(exp.f64 re)
re
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
(*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)
#s(approx (exp re) #s(literal 1 binary64))
#s(literal 1 binary64)
im
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im))
(fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)
(fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im)
(*.f64 im re)
im
re
#s(literal 1/2 binary64)
#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
#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)))
#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)
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
#s(approx (* (exp re) (sin im)) (*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im) (exp.f64 re)))
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im)
(*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im) (exp.f64 re))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re))
(*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (exp.f64 re))
(fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))
#s(literal -1/6 binary64)
(*.f64 im im)
im
#s(literal 1 binary64)
(exp.f64 re)
re
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
(*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)
#s(approx (exp re) #s(literal 1 binary64))
#s(literal 1 binary64)
im
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im re) im) re im)))
#s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im))
#s(approx (* (exp re) im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im re) im) re im))
(fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im re) im) re im)
(fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im)
(fma.f64 #s(literal 1/2 binary64) (*.f64 im re) im)
(*.f64 im re)
im
re
#s(literal 1/2 binary64)
#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
#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)))
#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)

localize143.0ms (2%)

Memory
16.1MiB live, 159.3MiB allocated; 59ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(pow.f64 im #s(literal 3 binary64))
accuracy0.08984375
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
accuracy31.398948121190955
#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)))
accuracy34.48639049237189
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
accuracy0.0546875
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
accuracy0.15234375
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
accuracy18.764411424375595
#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)))
accuracy20.731212432536953
#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))
accuracy0.00390625
(fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im)
accuracy0.0703125
(fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)
accuracy20.731212432536953
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)))
accuracy20.940908202026105
#s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im))
accuracy0.01171875
(*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)
accuracy20.731212432536953
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
accuracy31.482504202709325
#s(approx (exp re) #s(literal 1 binary64))
accuracy0.02734375
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im)
accuracy0.1015625
(fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64))
accuracy3.941384233533022
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re))
accuracy22.838646148048284
#s(approx (* (exp re) (sin im)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
Samples
106.0ms256×0valid
Compiler

Compiled 154 to 32 computations (79.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 89.0ms
ival-mult: 62.0ms (69.9% of total)
ival-add: 8.0ms (9% of total)
ival-sin: 7.0ms (7.9% of total)
const: 7.0ms (7.9% of total)
ival-pow: 3.0ms (3.4% of total)
ival-exp: 2.0ms (2.3% 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)

series47.0ms (0.6%)

Memory
-23.4MiB live, 66.2MiB allocated; 10ms collecting garbage
Counts
21 → 69
Calls
Call 1
Inputs
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im)
#s(approx (* (exp re) (sin im)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re))
(fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
(*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)
#s(approx (exp re) #s(literal 1 binary64))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im))
(fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)
(fma.f64 (*.f64 im re) #s(literal 1/2 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))
(*.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))
#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)))
#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))
(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))
Outputs
(* im (+ 1 (* -1/6 (pow im 2))))
(+ (* im (* re (+ 1 (* -1/6 (pow im 2))))) (* im (+ 1 (* -1/6 (pow im 2)))))
(+ (* im (+ 1 (* -1/6 (pow im 2)))) (* re (+ (* 1/2 (* im (* re (+ 1 (* -1/6 (pow im 2)))))) (* im (+ 1 (* -1/6 (pow im 2)))))))
(+ (* im (+ 1 (* -1/6 (pow im 2)))) (* re (+ (* im (+ 1 (* -1/6 (pow im 2)))) (* re (+ (* 1/6 (* im (* re (+ 1 (* -1/6 (pow im 2)))))) (* 1/2 (* im (+ 1 (* -1/6 (pow im 2))))))))))
(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/6 (pow im 2)))
(+ 1 (+ (* -1/6 (pow im 2)) (* re (+ 1 (* -1/6 (pow im 2))))))
(+ 1 (+ (* -1/6 (pow im 2)) (* re (+ 1 (+ (* -1/6 (pow im 2)) (* 1/2 (* re (+ 1 (* -1/6 (pow im 2))))))))))
(+ 1 (+ (* -1/6 (pow im 2)) (* re (+ 1 (+ (* -1/6 (pow im 2)) (* re (+ (* 1/6 (* re (+ 1 (* -1/6 (pow im 2))))) (* 1/2 (+ 1 (* -1/6 (pow im 2)))))))))))
im
(+ im (* im re))
(+ im (* re (+ im (* 1/2 (* im re)))))
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
1
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(+ im (* 1/2 (* im re)))
1/2
(+ 1/2 (* 1/6 re))
(+ 1 (* 1/2 re))
(+ 1 (* re (+ 1/2 (* 1/6 re))))
(* im (* (exp re) (+ 1 (* -1/6 (pow im 2)))))
(* (exp re) (sin im))
(* (exp re) (+ 1 (* -1/6 (pow im 2))))
(* im (exp re))
(exp re)
(* 1/2 (* im (pow re 2)))
(* (pow re 2) (+ (* 1/2 im) (/ im re)))
(* (pow re 2) (+ (* 1/2 im) (+ (/ im re) (/ im (pow re 2)))))
(* 1/2 (* im re))
(* re (+ (* 1/2 im) (/ im 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/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)))))
(* (pow re 2) (+ (* -1 (/ (+ (* -1 im) (* -1 (/ im re))) re)) (* 1/2 im)))
(* -1 (* re (+ (* -1 (/ im re)) (* -1/2 im))))
(* -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)))
(* 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))))))))
(+ (exp re) (* -1/6 (* (pow im 2) (exp re))))
(* im (+ 1 (* re (+ 1 (* 1/2 re)))))
(* im (+ 1 (* 1/2 re)))
(* 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/6 (* (pow im 3) (exp re)))
(* (pow im 3) (+ (* -1/6 (exp re)) (/ (exp re) (pow im 2))))
(* -1/6 (* (pow im 2) (exp re)))
(* (pow im 2) (+ (* -1/6 (exp re)) (/ (exp re) (pow im 2))))
(* -1/6 (pow im 2))
(* (pow im 2) (- (/ 1 (pow im 2)) 1/6))
(* -1/6 (pow im 3))
(* (pow im 3) (- (/ 1 (pow im 2)) 1/6))
(* -1 (* (pow im 3) (+ (* -1 (/ (exp re) (pow im 2))) (* 1/6 (exp re)))))
(* -1 (* im (- (* re (- (* -1/2 re) 1)) 1)))
(* -1 (* im (- (* -1/2 re) 1)))
(* -1 (* (pow im 3) (- 1/6 (/ 1 (pow im 2)))))
Calls

6 calls:

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

simplify338.0ms (4.7%)

Memory
-25.8MiB live, 394.4MiB allocated; 85ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0204825
1774755
23511745
09207673
Stop Event
iter limit
node limit
Counts
69 → 68
Calls
Call 1
Inputs
(* im (+ 1 (* -1/6 (pow im 2))))
(+ (* im (* re (+ 1 (* -1/6 (pow im 2))))) (* im (+ 1 (* -1/6 (pow im 2)))))
(+ (* im (+ 1 (* -1/6 (pow im 2)))) (* re (+ (* 1/2 (* im (* re (+ 1 (* -1/6 (pow im 2)))))) (* im (+ 1 (* -1/6 (pow im 2)))))))
(+ (* im (+ 1 (* -1/6 (pow im 2)))) (* re (+ (* im (+ 1 (* -1/6 (pow im 2)))) (* re (+ (* 1/6 (* im (* re (+ 1 (* -1/6 (pow im 2)))))) (* 1/2 (* im (+ 1 (* -1/6 (pow im 2))))))))))
(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/6 (pow im 2)))
(+ 1 (+ (* -1/6 (pow im 2)) (* re (+ 1 (* -1/6 (pow im 2))))))
(+ 1 (+ (* -1/6 (pow im 2)) (* re (+ 1 (+ (* -1/6 (pow im 2)) (* 1/2 (* re (+ 1 (* -1/6 (pow im 2))))))))))
(+ 1 (+ (* -1/6 (pow im 2)) (* re (+ 1 (+ (* -1/6 (pow im 2)) (* re (+ (* 1/6 (* re (+ 1 (* -1/6 (pow im 2))))) (* 1/2 (+ 1 (* -1/6 (pow im 2)))))))))))
im
(+ im (* im re))
(+ im (* re (+ im (* 1/2 (* im re)))))
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
1
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(+ im (* 1/2 (* im re)))
1/2
(+ 1/2 (* 1/6 re))
(+ 1 (* 1/2 re))
(+ 1 (* re (+ 1/2 (* 1/6 re))))
(* im (* (exp re) (+ 1 (* -1/6 (pow im 2)))))
(* (exp re) (sin im))
(* (exp re) (+ 1 (* -1/6 (pow im 2))))
(* im (exp re))
(exp re)
(* 1/2 (* im (pow re 2)))
(* (pow re 2) (+ (* 1/2 im) (/ im re)))
(* (pow re 2) (+ (* 1/2 im) (+ (/ im re) (/ im (pow re 2)))))
(* 1/2 (* im re))
(* re (+ (* 1/2 im) (/ im 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/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)))))
(* (pow re 2) (+ (* -1 (/ (+ (* -1 im) (* -1 (/ im re))) re)) (* 1/2 im)))
(* -1 (* re (+ (* -1 (/ im re)) (* -1/2 im))))
(* -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)))
(* 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))))))))
(+ (exp re) (* -1/6 (* (pow im 2) (exp re))))
(* im (+ 1 (* re (+ 1 (* 1/2 re)))))
(* im (+ 1 (* 1/2 re)))
(* 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/6 (* (pow im 3) (exp re)))
(* (pow im 3) (+ (* -1/6 (exp re)) (/ (exp re) (pow im 2))))
(* -1/6 (* (pow im 2) (exp re)))
(* (pow im 2) (+ (* -1/6 (exp re)) (/ (exp re) (pow im 2))))
(* -1/6 (pow im 2))
(* (pow im 2) (- (/ 1 (pow im 2)) 1/6))
(* -1/6 (pow im 3))
(* (pow im 3) (- (/ 1 (pow im 2)) 1/6))
(* -1 (* (pow im 3) (+ (* -1 (/ (exp re) (pow im 2))) (* 1/6 (exp re)))))
(* -1 (* im (- (* re (- (* -1/2 re) 1)) 1)))
(* -1 (* im (- (* -1/2 re) 1)))
(* -1 (* (pow im 3) (- 1/6 (/ 1 (pow im 2)))))
Outputs
(* im (+ 1 (* -1/6 (pow im 2))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(+ (* im (* re (+ 1 (* -1/6 (pow im 2))))) (* im (+ 1 (* -1/6 (pow im 2)))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))
(+ (* im (+ 1 (* -1/6 (pow im 2)))) (* re (+ (* 1/2 (* im (* re (+ 1 (* -1/6 (pow im 2)))))) (* im (+ 1 (* -1/6 (pow im 2)))))))
(fma.f64 (*.f64 re (*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im) re)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im)))
(+ (* im (+ 1 (* -1/6 (pow im 2)))) (* re (+ (* im (+ 1 (* -1/6 (pow im 2)))) (* re (+ (* 1/6 (* im (* re (+ 1 (* -1/6 (pow im 2)))))) (* 1/2 (* im (+ 1 (* -1/6 (pow im 2))))))))))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im) (*.f64 (*.f64 re re) (fma.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 im im) #s(literal 1/2 binary64)) im (*.f64 #s(literal 1/6 binary64) (*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im) re)))))
(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))))))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (sin.f64 im)) re (sin.f64 im))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
(fma.f64 (fma.f64 (*.f64 (sin.f64 im) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re (sin.f64 im)) re (sin.f64 im))
(+ 1 (* -1/6 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))
(+ 1 (+ (* -1/6 (pow im 2)) (* re (+ 1 (* -1/6 (pow im 2))))))
(*.f64 (+.f64 #s(literal 1 binary64) re) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(+ 1 (+ (* -1/6 (pow im 2)) (* re (+ 1 (+ (* -1/6 (pow im 2)) (* 1/2 (* re (+ 1 (* -1/6 (pow im 2))))))))))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(+ 1 (+ (* -1/6 (pow im 2)) (* re (+ 1 (+ (* -1/6 (pow im 2)) (* re (+ (* 1/6 (* re (+ 1 (* -1/6 (pow im 2))))) (* 1/2 (+ 1 (* -1/6 (pow im 2)))))))))))
(fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))
im
(+ im (* im re))
(fma.f64 re im im)
(+ im (* re (+ im (* 1/2 (* im re)))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)) im)
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)
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))
(+ im (* 1/2 (* im re)))
(fma.f64 (*.f64 re im) #s(literal 1/2 binary64) 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))
(+ 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 (* (exp re) (+ 1 (* -1/6 (pow im 2)))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im) (exp.f64 re))
(* (exp re) (sin im))
(*.f64 (sin.f64 im) (exp.f64 re))
(* (exp re) (+ 1 (* -1/6 (pow im 2))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (exp.f64 re))
(* im (exp re))
(*.f64 (exp.f64 re) im)
(exp re)
(exp.f64 re)
(* 1/2 (* im (pow re 2)))
(*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im)
(* (pow re 2) (+ (* 1/2 im) (/ im re)))
(*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re)
(* (pow re 2) (+ (* 1/2 im) (+ (/ im re) (/ im (pow re 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 (+.f64 (/.f64 im re) im) re)) re) re)
(* 1/2 (* im re))
(*.f64 (*.f64 re im) #s(literal 1/2 binary64))
(* re (+ (* 1/2 im) (/ im re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) 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 (/.f64 #s(literal 1/2 binary64) re) #s(literal 1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(*.f64 (+.f64 (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1/2 binary64)) re) #s(literal 1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (+ (/ 1 (pow re 2)) (/ 1 (pow re 3))))))
(*.f64 (+.f64 (/.f64 (-.f64 (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1 binary64)) re) #s(literal -1/2 binary64)) re) #s(literal 1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* 1/6 re)
(*.f64 #s(literal 1/6 binary64) re)
(* re (+ 1/6 (* 1/2 (/ 1 re))))
(*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 1/6 binary64)) re)
(* 1/6 (pow re 2))
(*.f64 (*.f64 re re) #s(literal 1/6 binary64))
(* (pow re 2) (+ 1/6 (* 1/2 (/ 1 re))))
(*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 1/6 binary64)) re) re)
(* (pow re 2) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(*.f64 (+.f64 (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1/2 binary64)) re) #s(literal 1/6 binary64)) (*.f64 re re))
(* (pow re 2) (+ (* -1 (/ (+ (* -1 im) (* -1 (/ im re))) re)) (* 1/2 im)))
(*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 (+.f64 (/.f64 im re) im) re)) re) re)
(* -1 (* re (+ (* -1 (/ im re)) (* -1/2 im))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re)
(* -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 (/.f64 #s(literal -1 binary64) re) #s(literal -1/2 binary64)) 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 (neg.f64 (-.f64 (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1 binary64)) re) #s(literal -1/2 binary64))) re) #s(literal 1/6 binary64)))
(* 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)))))))
(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)
(+ (exp re) (* -1/6 (* (pow im 2) (exp re))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (exp.f64 re))
(* im (+ 1 (* re (+ 1 (* 1/2 re)))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)) im)
(* im (+ 1 (* 1/2 re)))
(fma.f64 (*.f64 re im) #s(literal 1/2 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)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im)
(pow im 3)
(pow.f64 im #s(literal 3 binary64))
(* -1/6 (* (pow im 3) (exp re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) (exp.f64 re))
(* (pow im 3) (+ (* -1/6 (exp re)) (/ (exp re) (pow im 2))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (exp.f64 re) (/.f64 (/.f64 (exp.f64 re) im) im)) (pow.f64 im #s(literal 3 binary64)))
(* -1/6 (* (pow im 2) (exp re)))
(*.f64 (*.f64 (*.f64 (exp.f64 re) im) im) #s(literal -1/6 binary64))
(* (pow im 2) (+ (* -1/6 (exp re)) (/ (exp re) (pow im 2))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (exp.f64 re) (/.f64 (/.f64 (exp.f64 re) im) im)) (*.f64 im im))
(* -1/6 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -1/6 binary64))
(* (pow im 2) (- (/ 1 (pow im 2)) 1/6))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im)
(* -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 (* (pow im 3) (+ (* -1 (/ (exp re) (pow im 2))) (* 1/6 (exp re)))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (exp.f64 re) (/.f64 (/.f64 (exp.f64 re) im) im)) (pow.f64 im #s(literal 3 binary64)))
(* -1 (* im (- (* re (- (* -1/2 re) 1)) 1)))
(*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal -1 binary64)) re #s(literal -1 binary64)) (neg.f64 im))
(* -1 (* im (- (* -1/2 re) 1)))
(fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im)
(* -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))))

rewrite99.0ms (1.4%)

Memory
16.6MiB live, 115.1MiB allocated; 16ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035217
058217
1181217
01271217
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
21 → 186
Calls
Call 1
Inputs
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im)
#s(approx (* (exp re) (sin im)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re))
(fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
(*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)
#s(approx (exp re) #s(literal 1 binary64))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im))
(fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)
(fma.f64 (*.f64 im re) #s(literal 1/2 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))
(*.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))
#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)))
#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))
(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))
Outputs
(*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) im) (exp.f64 re))
(*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) (exp.f64 re))
(*.f64 (*.f64 (exp.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 (exp.f64 re) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) im))
(*.f64 (*.f64 (exp.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im)
(*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 (exp.f64 re) im))
(*.f64 im (*.f64 (exp.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (exp.f64 re) im)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (*.f64 (exp.f64 re) im)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))))
#s(approx (* (exp re) (sin im)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) im) (exp.f64 re)))
(*.f64 (exp.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (exp.f64 re))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (exp.f64 re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (exp.f64 re)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))))
(/.f64 (*.f64 (exp.f64 re) (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
(/.f64 (*.f64 (exp.f64 re) (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))))
(fma.f64 (cosh.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 (sinh.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (exp.f64 re) (*.f64 #s(literal 1 binary64) (exp.f64 re)))
(fma.f64 (exp.f64 re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (exp.f64 re) #s(literal 1 binary64)))
(fma.f64 (exp.f64 re) #s(literal 1 binary64) (*.f64 (exp.f64 re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (cosh.f64 re) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sinh.f64 re)))
(fma.f64 #s(literal 1 binary64) (exp.f64 re) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (exp.f64 re)))
(+.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (exp.f64 re)) (*.f64 #s(literal 1 binary64) (exp.f64 re)))
(+.f64 (*.f64 #s(literal 1 binary64) (exp.f64 re)) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (exp.f64 re)))
(+.f64 (*.f64 (cosh.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 (sinh.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))))
(+.f64 (*.f64 (exp.f64 re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) (*.f64 (exp.f64 re) #s(literal 1 binary64)))
(+.f64 (*.f64 (exp.f64 re) #s(literal 1 binary64)) (*.f64 (exp.f64 re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))))
(+.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (cosh.f64 re)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sinh.f64 re)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 im)) (neg.f64 im) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (fabs.f64 im)) (fabs.f64 im) #s(literal 1 binary64))
(fma.f64 (*.f64 im #s(literal -1/6 binary64)) (*.f64 im #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im #s(literal -1/6 binary64)) im #s(literal 1 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 im (*.f64 im #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 im #s(literal -1/6 binary64))) im))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 im im)) #s(literal -1/6 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 im im)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))))
(+.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
(*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)
(*.f64 im #s(approx (exp re) #s(literal 1 binary64)))
#s(approx (exp re) #s(literal 1 binary64))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re im)))
#s(approx (* (exp re) im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re im))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 2 binary64))) (-.f64 im (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) im)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im (-.f64 im (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) im))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) im))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im (-.f64 im (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 2 binary64))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re im)
(fma.f64 re (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) im)
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) im)) (/.f64 (*.f64 im im) (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) im)))
(-.f64 im (*.f64 (neg.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im)) re))
(-.f64 im (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im)))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) #s(literal 2 binary64)))))
(+.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re) im)
(+.f64 im (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im) re))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) #s(literal 2 binary64))) (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 re im))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) im)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 re im))) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) im))
(/.f64 (fma.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) im))))
(/.f64 (fma.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 re im))) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) re im)
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im)
(fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im)
(fma.f64 re (*.f64 im #s(literal 1/2 binary64)) im)
(fma.f64 im (*.f64 #s(literal 1/2 binary64) re) im)
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) im)) (/.f64 (*.f64 im im) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) im)))
(-.f64 im (*.f64 #s(literal -1/2 binary64) (*.f64 re im)))
(-.f64 im (*.f64 (neg.f64 (*.f64 re im)) #s(literal 1/2 binary64)))
(-.f64 im (*.f64 (neg.f64 im) (*.f64 #s(literal 1/2 binary64) re)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 re im))) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 re im))) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) #s(literal 2 binary64)))))
(+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re im)) im)
(+.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 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)
(*.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 (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 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))
(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))
(-.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 (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 im (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 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 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 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 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 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 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 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 im #s(literal -1/6 binary64)) (*.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 (*.f64 im im) #s(literal -1/6 binary64)) im im)
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)
(fma.f64 im (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) im)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im)
(-.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) im)) (/.f64 (*.f64 im im) (-.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) im)))
(-.f64 im (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal -1/6 binary64)))
(-.f64 im (*.f64 #s(literal 1/6 binary64) (pow.f64 im #s(literal 3 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)) im)
(+.f64 im (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 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 #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))))
(/.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 #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 (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 #s(literal 1/36 binary64) (*.f64 re re) (-.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 #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/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 (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 (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 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))
(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))
(-.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))

eval30.0ms (0.4%)

Memory
17.6MiB live, 61.5MiB allocated; 6ms collecting garbage
Compiler

Compiled 6 503 to 1 219 computations (81.3% saved)

prune20.0ms (0.3%)

Memory
-5.4MiB live, 38.6MiB allocated; 7ms collecting garbage
Pruning

21 alts after pruning (15 fresh and 6 done)

PrunedKeptTotal
New23114245
Fresh516
Picked325
Done044
Total23921260
Accuracy
100.0%
Counts
260 → 21
Alt Table
Click to see full alt table
StatusAccuracyProgram
56.0%
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
64.7%
(*.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))
51.6%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
67.6%
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
35.1%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
27.9%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
41.2%
#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.2%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.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 #s(literal 1 binary64))) im))
41.0%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
37.4%
#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))
40.8%
#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))
24.6%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
50.9%
#s(approx (* (exp re) (sin im)) (sin.f64 im))
28.5%
#s(approx (* (exp re) (sin im)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
39.4%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
35.6%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
35.3%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
30.0%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
14.4%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
16.6%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
27.9%
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
Compiler

Compiled 847 to 564 computations (33.4% saved)

simplify210.0ms (2.9%)

Memory
5.7MiB live, 196.7MiB allocated; 28ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
cost-diff0
#s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
cost-diff0
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) 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 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
cost-diff0
(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))
cost-diff0
#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)))
cost-diff0
(*.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)
cost-diff0
#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))
cost-diff0
#s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64)))
cost-diff0
(fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)
cost-diff0
#s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im))
cost-diff0
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re 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
#s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))
cost-diff0
(sin.f64 im)
cost-diff0
(/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))
cost-diff0
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
048377
069371
1118365
2249362
3718362
43990362
08532346
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
(/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))
(sin.f64 im)
im
#s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))
(fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))
#s(literal -4 binary64)
re
#s(literal 4 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)
re
im
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im))
(fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)
#s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64)))
(*.f64 (*.f64 re im) #s(literal 1/2 binary64))
(*.f64 re im)
re
im
#s(literal 1/2 binary64)
#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))
(*.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) (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)))
(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))
(fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64))
#s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64))
#s(literal 1/2 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) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
#s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64))
#s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re))
(*.f64 #s(literal 1/6 binary64) re)
#s(literal 1/6 binary64)
re
#s(literal 1 binary64)
im
Outputs
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 4 binary64) (sin.f64 im)) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))
(/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))
(sin.f64 im)
im
#s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))
(fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))
#s(literal -4 binary64)
re
#s(literal 4 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)
re
im
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re im)))
#s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im))
#s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re im))
(fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)
(fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re im)
#s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64)))
#s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im))
(*.f64 (*.f64 re im) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) im)
(*.f64 re im)
re
im
#s(literal 1/2 binary64)
#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))
(*.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) (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)))
(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))
(fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64))
#s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64))
#s(literal 1/2 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) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
#s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64))
#s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re))
(*.f64 #s(literal 1/6 binary64) re)
#s(literal 1/6 binary64)
re
#s(literal 1 binary64)
im

localize280.0ms (3.9%)

Memory
-31.0MiB live, 272.9MiB allocated; 45ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.23046875
(*.f64 #s(literal 1/6 binary64) re)
accuracy14.48584700168365
#s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
accuracy16.981253718453562
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
accuracy30.9648086831
#s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re))
accuracy0.0234375
(fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64))
accuracy14.48584700168365
#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)))
accuracy15.01818414026784
#s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64))
accuracy16.981253718453562
#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))
accuracy0.03515625
(fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)
accuracy14.500559289402391
#s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im))
accuracy16.981253718453562
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
accuracy30.758173695302297
#s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64)))
accuracy0.0
(fma.f64 re im im)
accuracy14.574212035497464
#s(approx (* (exp re) im) (fma.f64 re im im))
accuracy16.981253718453562
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
accuracy0.0
(sin.f64 im)
accuracy0.010097509768442016
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
accuracy0.01171875
(/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))
accuracy14.14196425087703
#s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))
Samples
118.0ms185×0valid
17.0ms67×0exit
12.0ms5exit
1.0ms2valid
1.0ms1valid
Compiler

Compiled 189 to 36 computations (81% saved)

Precisions
Click to see histograms. Total time spent on operations: 107.0ms
ival-mult: 47.0ms (43.8% of total)
ival-cosh: 29.0ms (27% of total)
ival-add: 8.0ms (7.5% of total)
ival-sin: 8.0ms (7.5% of total)
ival-sinh: 5.0ms (4.7% of total)
const: 4.0ms (3.7% of total)
ival-exp: 2.0ms (1.9% of total)
adjust: 1.0ms (0.9% of total)
ival-div: 1.0ms (0.9% of total)
exact: 1.0ms (0.9% of total)
ival-sub: 1.0ms (0.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series16.0ms (0.2%)

Memory
13.6MiB live, 13.6MiB allocated; 0ms collecting garbage
Counts
23 → 74
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
(/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))
(sin.f64 im)
#s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 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)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im))
(fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)
#s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64)))
#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))
(*.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) (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)))
(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))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
#s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
#s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64))
(fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64))
#s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re))
(*.f64 #s(literal 1/6 binary64) re)
Outputs
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (+ (sin im) (* -4 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* -4 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (* -4 (+ (* -1/4 (sin im)) (* 1/8 (sin im)))))))))
(* 1/4 (sin im))
(+ (* 1/4 (sin im)) (* 1/4 (* re (sin im))))
(+ (* 1/4 (sin im)) (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (sin im)))))
(+ (* 1/4 (sin im)) (* re (- (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (sin im)))))
4
(+ 4 (* -4 re))
(+ 4 (* re (- (* 2 re) 4)))
(+ 4 (* re (- (* re (+ 2 (* -2/3 re))) 4)))
(+ (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 (* 1/2 (* im re)))
1
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* 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/6 re)
(* 4 (/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))
(* (exp re) (sin im))
(* im (exp re))
(* im re)
(* re (+ im (/ im re)))
(* 1/2 (* im (pow re 2)))
(* (pow re 2) (+ (* 1/2 im) (/ im re)))
(* (pow re 2) (+ (* 1/2 im) (+ (/ im re) (/ im (pow re 2)))))
(* 1/2 (* im re))
(* re (+ (* 1/2 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))))))
(* 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)))))
(* -1 (* re (+ (* -1 im) (* -1 (/ im re)))))
(* (pow re 2) (+ (* -1 (/ (+ (* -1 im) (* -1 (/ im re))) re)) (* 1/2 im)))
(* -1 (* re (+ (* -1 (/ im re)) (* -1/2 im))))
(* -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)))
(* 4 (/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(* im (+ (* -2/3 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(* im (+ (* (pow im 2) (- (* 1/30 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/1260 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/30 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(* im (+ (* -1/6 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/120 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp 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))
(* im (+ 1 (* re (+ 1 (* 1/2 re)))))
(* im (+ 1 (* 1/2 re)))
(* -1 (* im (- (* -1 re) 1)))
(* -1 (* im (- (* re (- (* -1/2 re) 1)) 1)))
(* -1 (* im (- (* -1/2 re) 1)))
Calls

6 calls:

TimeVariablePointExpression
3.0ms
re
@-inf
((* (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) 4) (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) (sin im) (- (* 4 (cosh re)) (* 4 (sinh re))) (* (exp re) (sin im)) (* (exp re) im) (+ (* re im) im) (* (exp re) (sin im)) (* (exp re) im) (+ (* (+ (* (* im re) 1/2) im) re) im) (+ (* (* im re) 1/2) im) (* (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) (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (+ (* 1/6 re) 1/2) (+ (* (+ (* 1/6 re) 1/2) re) 1) (+ (* 1/6 re) 1/2) (* 1/6 re))
3.0ms
re
@inf
((* (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) 4) (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) (sin im) (- (* 4 (cosh re)) (* 4 (sinh re))) (* (exp re) (sin im)) (* (exp re) im) (+ (* re im) im) (* (exp re) (sin im)) (* (exp re) im) (+ (* (+ (* (* im re) 1/2) im) re) im) (+ (* (* im re) 1/2) im) (* (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) (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (+ (* 1/6 re) 1/2) (+ (* (+ (* 1/6 re) 1/2) re) 1) (+ (* 1/6 re) 1/2) (* 1/6 re))
3.0ms
im
@-inf
((* (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) 4) (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) (sin im) (- (* 4 (cosh re)) (* 4 (sinh re))) (* (exp re) (sin im)) (* (exp re) im) (+ (* re im) im) (* (exp re) (sin im)) (* (exp re) im) (+ (* (+ (* (* im re) 1/2) im) re) im) (+ (* (* im re) 1/2) im) (* (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) (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (+ (* 1/6 re) 1/2) (+ (* (+ (* 1/6 re) 1/2) re) 1) (+ (* 1/6 re) 1/2) (* 1/6 re))
2.0ms
im
@inf
((* (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) 4) (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) (sin im) (- (* 4 (cosh re)) (* 4 (sinh re))) (* (exp re) (sin im)) (* (exp re) im) (+ (* re im) im) (* (exp re) (sin im)) (* (exp re) im) (+ (* (+ (* (* im re) 1/2) im) re) im) (+ (* (* im re) 1/2) im) (* (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) (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (+ (* 1/6 re) 1/2) (+ (* (+ (* 1/6 re) 1/2) re) 1) (+ (* 1/6 re) 1/2) (* 1/6 re))
1.0ms
im
@0
((* (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) 4) (/ (sin im) (- (* 4 (cosh re)) (* 4 (sinh re)))) (sin im) (- (* 4 (cosh re)) (* 4 (sinh re))) (* (exp re) (sin im)) (* (exp re) im) (+ (* re im) im) (* (exp re) (sin im)) (* (exp re) im) (+ (* (+ (* (* im re) 1/2) im) re) im) (+ (* (* im re) 1/2) im) (* (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) (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (+ (* 1/6 re) 1/2) (+ (* (+ (* 1/6 re) 1/2) re) 1) (+ (* 1/6 re) 1/2) (* 1/6 re))

simplify256.0ms (3.5%)

Memory
-2.4MiB live, 185.9MiB allocated; 36ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02611119
1958995
23868946
08111871
Stop Event
iter limit
node limit
Counts
74 → 73
Calls
Call 1
Inputs
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (+ (sin im) (* -4 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* -4 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (* -4 (+ (* -1/4 (sin im)) (* 1/8 (sin im)))))))))
(* 1/4 (sin im))
(+ (* 1/4 (sin im)) (* 1/4 (* re (sin im))))
(+ (* 1/4 (sin im)) (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (sin im)))))
(+ (* 1/4 (sin im)) (* re (- (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (sin im)))))
4
(+ 4 (* -4 re))
(+ 4 (* re (- (* 2 re) 4)))
(+ 4 (* re (- (* re (+ 2 (* -2/3 re))) 4)))
(+ (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 (* 1/2 (* im re)))
1
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* 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/6 re)
(* 4 (/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))
(* (exp re) (sin im))
(* im (exp re))
(* im re)
(* re (+ im (/ im re)))
(* 1/2 (* im (pow re 2)))
(* (pow re 2) (+ (* 1/2 im) (/ im re)))
(* (pow re 2) (+ (* 1/2 im) (+ (/ im re) (/ im (pow re 2)))))
(* 1/2 (* im re))
(* re (+ (* 1/2 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))))))
(* 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)))))
(* -1 (* re (+ (* -1 im) (* -1 (/ im re)))))
(* (pow re 2) (+ (* -1 (/ (+ (* -1 im) (* -1 (/ im re))) re)) (* 1/2 im)))
(* -1 (* re (+ (* -1 (/ im re)) (* -1/2 im))))
(* -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)))
(* 4 (/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(* im (+ (* -2/3 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(* im (+ (* (pow im 2) (- (* 1/30 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/1260 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/30 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(* im (+ (* -1/6 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/120 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp 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))
(* im (+ 1 (* re (+ 1 (* 1/2 re)))))
(* im (+ 1 (* 1/2 re)))
(* -1 (* im (- (* -1 re) 1)))
(* -1 (* im (- (* re (- (* -1/2 re) 1)) 1)))
(* -1 (* im (- (* -1/2 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 (+ (sin im) (* -4 (* re (+ (* -1/4 (sin im)) (* 1/8 (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 (+ (* -4 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (* -4 (+ (* -1/4 (sin im)) (* 1/8 (sin im)))))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/2 binary64) (sin.f64 im) (*.f64 (*.f64 (*.f64 #s(literal -1/24 binary64) (sin.f64 im)) re) #s(literal -4 binary64))) re (sin.f64 im)) re (sin.f64 im))
(* 1/4 (sin im))
(*.f64 #s(literal 1/4 binary64) (sin.f64 im))
(+ (* 1/4 (sin im)) (* 1/4 (* re (sin im))))
(*.f64 (sin.f64 im) (fma.f64 #s(literal 1/4 binary64) re #s(literal 1/4 binary64)))
(+ (* 1/4 (sin im)) (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (sin im)))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sin.f64 im)) re (*.f64 #s(literal 1/4 binary64) (sin.f64 im))) re (*.f64 #s(literal 1/4 binary64) (sin.f64 im)))
(+ (* 1/4 (sin im)) (* re (- (* re (- (* -1 (* re (+ (* -1/4 (sin im)) (+ (* -1/24 (sin im)) (* 1/4 (sin im)))))) (+ (* -1/4 (sin im)) (* 1/8 (sin im))))) (* -1/4 (sin im)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (sin.f64 im)) re (*.f64 #s(literal 1/8 binary64) (sin.f64 im))) re (*.f64 #s(literal 1/4 binary64) (sin.f64 im))) re (*.f64 #s(literal 1/4 binary64) (sin.f64 im)))
4
#s(literal 4 binary64)
(+ 4 (* -4 re))
(fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))
(+ 4 (* re (- (* 2 re) 4)))
(fma.f64 (fma.f64 #s(literal 2 binary64) re #s(literal -4 binary64)) re #s(literal 4 binary64))
(+ 4 (* re (- (* re (+ 2 (* -2/3 re))) 4)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) re #s(literal 2 binary64)) re #s(literal -4 binary64)) re #s(literal 4 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 (fma.f64 (*.f64 (sin.f64 im) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re (sin.f64 im)) re (sin.f64 im))
im
(+ im (* im re))
(fma.f64 re im im)
(+ im (* re (+ im (* 1/2 (* im re)))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)) 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 (* 1/2 (* im re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im)
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))
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 (* 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))
(* 1/6 re)
(*.f64 #s(literal 1/6 binary64) re)
(* 4 (/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(*.f64 (/.f64 (sin.f64 im) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) #s(literal 2 binary64))
(/ (sin im) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(/.f64 (/.f64 (sin.f64 im) #s(literal 2 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))))
(- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))
(*.f64 (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64))
(* (exp re) (sin im))
(*.f64 (sin.f64 im) (exp.f64 re))
(* im (exp re))
(*.f64 (exp.f64 re) im)
(* im re)
(*.f64 re im)
(* re (+ im (/ im re)))
(*.f64 (+.f64 (/.f64 im re) im) re)
(* 1/2 (* im (pow re 2)))
(*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im)
(* (pow re 2) (+ (* 1/2 im) (/ im re)))
(*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re)
(* (pow re 2) (+ (* 1/2 im) (+ (/ im re) (/ im (pow re 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 (+.f64 (/.f64 im re) im) re)) re) re)
(* 1/2 (* im re))
(*.f64 #s(literal 1/2 binary64) (*.f64 re im))
(* re (+ (* 1/2 im) (/ im re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) 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 (/.f64 #s(literal 1/2 binary64) re) #s(literal -1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(*.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1/2 binary64)) re) #s(literal -1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (+ (/ 1 (pow re 2)) (/ 1 (pow re 3))))))
(*.f64 (-.f64 (/.f64 (-.f64 (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1 binary64)) re) #s(literal -1/2 binary64)) re) #s(literal -1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* re (+ 1/6 (* 1/2 (/ 1 re))))
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal -1/6 binary64)) re)
(* 1/6 (pow re 2))
(*.f64 (*.f64 re re) #s(literal 1/6 binary64))
(* (pow re 2) (+ 1/6 (* 1/2 (/ 1 re))))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal -1/6 binary64)) re) re)
(* (pow re 2) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(*.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1/2 binary64)) re) #s(literal -1/6 binary64)) (*.f64 re re))
(* -1 (* re (+ (* -1 im) (* -1 (/ im re)))))
(*.f64 (+.f64 (/.f64 im re) im) re)
(* (pow re 2) (+ (* -1 (/ (+ (* -1 im) (* -1 (/ im re))) re)) (* 1/2 im)))
(*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 (+.f64 (/.f64 im re) im) re)) re) re)
(* -1 (* re (+ (* -1 (/ im re)) (* -1/2 im))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re)
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (/ 1 re)) re)) 1/6)))
(*.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1/2 binary64)) re) #s(literal -1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))) re)) 1/6)))
(*.f64 (-.f64 (/.f64 (-.f64 (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1 binary64)) re) #s(literal -1/2 binary64)) re) #s(literal -1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* 4 (/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))
(*.f64 (/.f64 im (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) #s(literal 2 binary64))
(* im (+ (* -2/3 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(*.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) #s(literal 2 binary64)) #s(literal -2/3 binary64) #s(literal 2 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) im)
(* im (+ (* (pow im 2) (- (* 1/30 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(fma.f64 (/.f64 im (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) #s(literal 2 binary64) (*.f64 (pow.f64 im #s(literal 3 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/30 binary64) im) im #s(literal -2/3 binary64)) (*.f64 (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64)))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/1260 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/30 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 2/3 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 4 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re)))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) #s(literal 2 binary64)) #s(literal -1/1260 binary64) #s(literal 1/60 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) im) im (/.f64 #s(literal -1/3 binary64) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))))) (*.f64 im im) (/.f64 #s(literal 2 binary64) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))))) im)
(/ im (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))
(/.f64 (/.f64 im #s(literal 2 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))))
(* im (+ (* -1/6 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im) (*.f64 (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64)))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (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)) (*.f64 (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64))) (/.f64 (/.f64 im #s(literal 2 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))) (* 1/120 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (* 1/6 (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))) (/ 1 (- (* 2 (+ (exp re) (/ 1 (exp re)))) (* 2 (- (exp re) (/ 1 (exp re))))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))) #s(literal -1/10080 binary64) (/.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64)))) (/.f64 (/.f64 im #s(literal 2 binary64)) (-.f64 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)) (-.f64 (exp.f64 re) (exp.f64 (neg.f64 re))))))
(* 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 #s(literal -1/6 binary64) (*.f64 im im) #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)
(* im (+ 1 (* re (+ 1 (* 1/2 re)))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)) im)
(* im (+ 1 (* 1/2 re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im)
(* -1 (* im (- (* -1 re) 1)))
(fma.f64 re im im)
(* -1 (* im (- (* re (- (* -1/2 re) 1)) 1)))
(*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal -1 binary64)) re #s(literal -1 binary64)) (neg.f64 im))
(* -1 (* im (- (* -1/2 re) 1)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re im) im)

rewrite236.0ms (3.2%)

Memory
-18.4MiB live, 177.2MiB allocated; 19ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
048336
069330
1238324
21660324
08385309
Stop Event
iter limit
node limit
iter limit
Counts
23 → 204
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
(/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))
(sin.f64 im)
#s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 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)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im))
(fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)
#s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64)))
#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))
(*.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) (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)))
(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))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
#s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
#s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64))
(fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64))
#s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re))
(*.f64 #s(literal 1/6 binary64) re)
Outputs
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
(*.f64 #s(literal 4 binary64) (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))))
(*.f64 (sin.f64 im) (/.f64 #s(literal 4 binary64) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 im)) #s(literal 4 binary64))) (neg.f64 (neg.f64 #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (*.f64 #s(literal 4 binary64) (neg.f64 (sin.f64 im)))) (neg.f64 (neg.f64 #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 4 binary64) (sin.f64 im)))) (neg.f64 (neg.f64 #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 im)) #s(literal 4 binary64)) (neg.f64 #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))))
(/.f64 (*.f64 #s(literal 4 binary64) (neg.f64 (sin.f64 im))) (neg.f64 #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 4 binary64) (sin.f64 im))) (neg.f64 #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))))
(/.f64 (*.f64 #s(literal 4 binary64) (sin.f64 im)) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 im)))) (neg.f64 (neg.f64 (neg.f64 #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 im))) (neg.f64 (neg.f64 #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (sin.f64 im)) (neg.f64 #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))))
(/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 im)) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))))
(neg.f64 (/.f64 (sin.f64 im) (neg.f64 #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64))))))
(sin.f64 im)
#s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 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))
(*.f64 (-.f64 re #s(literal -1 binary64)) im)
(*.f64 im (-.f64 re #s(literal -1 binary64)))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (-.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))))) (*.f64 (/.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (neg.f64 (-.f64 im (*.f64 re im))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (*.f64 im im)))) (neg.f64 (neg.f64 (-.f64 (*.f64 re im) im))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re im) im)) (*.f64 (-.f64 (*.f64 re im) im) (*.f64 im im))) (*.f64 (-.f64 (*.f64 re im) im) (-.f64 (*.f64 re im) im)))
(/.f64 (fma.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (*.f64 (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (-.f64 im (*.f64 re im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 re im) im)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im im (-.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 re im) im)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 re im) im))
(/.f64 (+.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im (-.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 re im) im))))
(/.f64 (+.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))))
(fma.f64 re im im)
(fma.f64 im re im)
(-.f64 (/.f64 (*.f64 im im) (-.f64 im (*.f64 re im))) (/.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (-.f64 im (*.f64 re im))))
(-.f64 (/.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re im) im)) (/.f64 (*.f64 im im) (-.f64 (*.f64 re im) im)))
(-.f64 im (*.f64 (neg.f64 re) im))
(-.f64 im (*.f64 (neg.f64 im) re))
(+.f64 (/.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (fma.f64 im im (-.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 re im) im)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im im (-.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 re im) im)))))
(+.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im im (-.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 re im) im)))) (/.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (fma.f64 im im (-.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 re im) im)))))
(+.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 re im) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 re im)) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re im) im)) (/.f64 (*.f64 (neg.f64 im) im) (-.f64 (*.f64 re im) im)))
(+.f64 (*.f64 re im) im)
(+.f64 im (*.f64 re im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re im)))
#s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re im))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))) (-.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64))))) (*.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (*.f64 im im)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im) (*.f64 im im))) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im) (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im)))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64))) (*.f64 (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64))) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64))) (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im im (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) (*.f64 re im))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) (*.f64 re im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64))))
(fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re im)
(fma.f64 re #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) im)
(-.f64 (/.f64 (*.f64 im im) (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re))) (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re))))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im)) (/.f64 (*.f64 im im) (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im)))
(-.f64 im (*.f64 (neg.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im))) re))
(-.f64 im (*.f64 (neg.f64 re) #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im))))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (fma.f64 im im (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) (*.f64 re im))))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im im (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) (*.f64 re im))))))
(+.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im im (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) (*.f64 re im))))) (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (fma.f64 im im (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) (*.f64 re im))))))
(+.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re)) (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) #s(literal 2 binary64)) (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im)) (/.f64 (*.f64 (neg.f64 im) im) (-.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im)))
(+.f64 (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re) im)
(+.f64 im (*.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) im)) re))
#s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 #s(literal 1/2 binary64) re) 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))
(*.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)
(*.f64 im #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))))
#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)))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(literal 3 binary64)) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.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)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (-.f64 (*.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.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)) (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.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 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.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 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (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 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (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 (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)) #s(literal 1 binary64))) (*.f64 (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)) (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 (fma.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.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 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) re) #s(literal 2 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) #s(literal 2 binary64))) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) re) #s(literal 2 binary64) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (*.f64 re (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) #s(literal 2 binary64))) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (*.f64 re (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) #s(literal 2 binary64) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64)))
(/.f64 (fma.f64 #s(literal 2 binary64) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) re))) (*.f64 #s(literal 2 binary64) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64))))
(/.f64 (fma.f64 #s(literal 2 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) (*.f64 #s(literal 2 binary64) (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) re))) (*.f64 #s(literal 2 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))))
(/.f64 (fma.f64 #s(literal 2 binary64) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 re (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))))) (*.f64 #s(literal 2 binary64) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64))))
(/.f64 (fma.f64 #s(literal 2 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) (*.f64 #s(literal 2 binary64) (*.f64 re (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))))) (*.f64 #s(literal 2 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #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(approx (+ (* 1/6 re) 1/2) #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(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #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(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (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 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #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(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #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(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
(fma.f64 (*.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) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) (*.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))
(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))
(fma.f64 #s(literal 1 binary64) (*.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))
(fma.f64 re (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 re (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))) (/.f64 #s(literal -1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (/.f64 #s(literal -1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (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))) (pow.f64 (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)) #s(literal -1 binary64)))
(-.f64 (*.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(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64))) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64))))
(+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))) (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))))
(+.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.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 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.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 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (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(literal -1 binary64) (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 (*.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(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #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 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
(*.f64 im #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))))
#s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))) (-.f64 (*.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) #s(literal -1 binary64)) (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) #s(literal -1 binary64))) (*.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))) (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64))) (*.f64 (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64)) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) (*.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) #s(literal 1 binary64))) (*.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) re) #s(literal 2 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal -1 binary64)) #s(literal 2 binary64))) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal -1 binary64)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) re) #s(literal 2 binary64) (*.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re)) (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re)) (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (*.f64 re (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal -1 binary64)) #s(literal 2 binary64))) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal -1 binary64)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (*.f64 re (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) #s(literal 2 binary64) (*.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re)) (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re)) (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 #s(literal 2 binary64) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) re))) (*.f64 #s(literal 2 binary64) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal -1 binary64))))
(/.f64 (fma.f64 #s(literal 2 binary64) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re)) (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) re))) (*.f64 #s(literal 2 binary64) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re)) (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 #s(literal 2 binary64) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 re (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64)) #s(literal 1 binary64))))) (*.f64 #s(literal 2 binary64) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal -1 binary64))))
(/.f64 (fma.f64 #s(literal 2 binary64) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re)) (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (*.f64 re (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 3 binary64)) #s(literal -1 binary64))))) (*.f64 #s(literal 2 binary64) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re)) (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) 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(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))))
(fma.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) (*.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(fma.f64 re (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 re (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re))) (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re))))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)))) (/.f64 #s(literal -1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))) (/.f64 #s(literal -1 binary64) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64))) (pow.f64 (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64)) #s(literal -1 binary64)))
(-.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64))) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64))))
(+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)))) (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)))))
(+.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) #s(literal -1 binary64)) (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)))) (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal -1 binary64))))
(+.f64 (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re))
#s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))) #s(literal 3 binary64)) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal -1 binary64)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))) (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))) (-.f64 (*.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal -1 binary64)) (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal -1 binary64))) (*.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))) (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64))) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal 1 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)))
(fma.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 1 binary64))
(fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) (*.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 re (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 re #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))) (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)))) (/.f64 #s(literal -1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)))))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))) (/.f64 #s(literal -1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64))) (pow.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) #s(literal -1 binary64)))
(-.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64))) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64))))
(+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)))) (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)))))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)))))
(+.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal -1 binary64)) (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))) (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re)) #s(literal -1 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64))))
(+.f64 (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re))
#s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re))
(*.f64 #s(literal 1/6 binary64) re)
(*.f64 re #s(literal 1/6 binary64))

eval70.0ms (1%)

Memory
4.3MiB live, 49.4MiB allocated; 5ms collecting garbage
Compiler

Compiled 12 906 to 1 367 computations (89.4% saved)

prune31.0ms (0.4%)

Memory
-9.0MiB live, 36.1MiB allocated; 4ms collecting garbage
Pruning

22 alts after pruning (11 fresh and 11 done)

PrunedKeptTotal
New2642266
Fresh1910
Picked055
Done066
Total26522287
Accuracy
100.0%
Counts
287 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
56.0%
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
64.7%
(*.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))
51.6%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
67.6%
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
35.1%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
27.9%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
41.2%
#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.2%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.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 #s(literal 1 binary64))) im))
41.0%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
37.4%
#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))
40.8%
#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))
24.6%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
50.9%
#s(approx (* (exp re) (sin im)) (sin.f64 im))
28.5%
#s(approx (* (exp re) (sin im)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
39.4%
#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)))
35.6%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
35.3%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
30.0%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
14.4%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
16.6%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
9.1%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
27.9%
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
Compiler

Compiled 1 175 to 514 computations (56.3% saved)

regimes72.0ms (1%)

Memory
22.5MiB live, 68.5MiB allocated; 3ms collecting garbage
Counts
35 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) 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))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.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 #s(literal 1 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)) #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) #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) (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 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 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))
(*.f64 (exp.f64 re) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (fma.f64 (sin.f64 im) re (sin.f64 im)))
(*.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))
Outputs
(*.f64 (exp.f64 re) (sin.f64 im))
Calls

5 calls:

33.0ms
(exp.f64 re)
10.0ms
im
9.0ms
(sin.f64 im)
9.0ms
re
8.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
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)

regimes54.0ms (0.7%)

Memory
-5.7MiB live, 47.8MiB allocated; 7ms collecting garbage
Counts
32 → 4
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) 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))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.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 #s(literal 1 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)) #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) #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) (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 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 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))
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))
#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

5 calls:

20.0ms
re
9.0ms
im
9.0ms
(sin.f64 im)
8.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
6.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
83.6%3(sin.f64 im)
92.9%2(exp.f64 re)
98.5%4(*.f64 (exp.f64 re) (sin.f64 im))
98.4%4re
83.6%2im
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes9.0ms (0.1%)

Memory
10.8MiB live, 10.8MiB allocated; 0ms collecting garbage
Counts
31 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) 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))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.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 #s(literal 1 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)) #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) #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) (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 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
(*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 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))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
Calls

1 calls:

7.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
100.0%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes49.0ms (0.7%)

Memory
-30.4MiB live, 17.2MiB allocated; 1ms collecting garbage
Counts
30 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) 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))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.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 #s(literal 1 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)) #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) #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) (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 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) (exp.f64 re)) im))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 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

2 calls:

40.0ms
re
7.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
96.9%4re
100.0%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 6 to 7 computations (-16.7% saved)

regimes8.0ms (0.1%)

Memory
12.5MiB live, 12.5MiB allocated; 0ms collecting garbage
Counts
28 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) 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))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.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 #s(literal 1 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)) #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) #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)))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 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:

7.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
99.9%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes8.0ms (0.1%)

Memory
9.8MiB live, 9.8MiB allocated; 0ms collecting garbage
Counts
25 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) 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))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.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 #s(literal 1 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)) #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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 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
99.7%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes37.0ms (0.5%)

Memory
-9.4MiB live, 34.3MiB allocated; 6ms collecting garbage
Counts
23 → 3
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) 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))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.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 #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 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:

12.0ms
im
7.0ms
(sin.f64 im)
6.0ms
re
6.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
5.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
61.0%3(sin.f64 im)
60.2%2im
67.8%2(exp.f64 re)
67.8%2re
73.4%3(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes30.0ms (0.4%)

Memory
31.4MiB live, 31.4MiB allocated; 0ms collecting garbage
Counts
22 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) 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))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.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 #s(literal 1 binary64))) im))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #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))
Calls

5 calls:

6.0ms
(sin.f64 im)
6.0ms
im
6.0ms
re
6.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
5.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
47.4%2(sin.f64 im)
41.2%1im
41.2%1re
41.2%1(exp.f64 re)
47.4%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes42.0ms (0.6%)

Memory
-33.4MiB live, 13.6MiB allocated; 1ms collecting garbage
Counts
20 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) 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))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) im (/.f64 im re)) re) re))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) im)) re im) re im)))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (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))
Calls

2 calls:

36.0ms
(sin.f64 im)
5.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
46.0%2(sin.f64 im)
46.2%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 7 to 8 computations (-14.3% saved)

regimes10.0ms (0.1%)

Memory
21.2MiB live, 21.2MiB allocated; 0ms 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 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) 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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
Calls

2 calls:

5.0ms
(sin.f64 im)
4.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
45.8%2(sin.f64 im)
46.0%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 7 to 8 computations (-14.3% saved)

regimes5.0ms (0.1%)

Memory
10.4MiB live, 10.4MiB allocated; 0ms collecting garbage
Counts
14 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im))))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im 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))
Calls

1 calls:

4.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
46.0%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes29.0ms (0.4%)

Memory
-42.9MiB live, 10.2MiB allocated; 11ms collecting garbage
Counts
13 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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)) (*.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))
Outputs
#s(approx (* (exp re) (sin im)) #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 #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

2 calls:

24.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
4.0ms
(sin.f64 im)
Results
AccuracySegmentsBranch
45.2%2(sin.f64 im)
45.6%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 7 to 8 computations (-14.3% saved)

regimes19.0ms (0.3%)

Memory
16.0MiB live, 16.0MiB allocated; 0ms collecting garbage
Counts
12 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #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))
Outputs
#s(approx (* (exp re) (sin im)) #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 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
Calls

5 calls:

4.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
37.4%1re
37.4%1(exp.f64 re)
37.4%1im
41.9%2(sin.f64 im)
42.2%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes4.0ms (0.1%)

Memory
5.1MiB live, 5.1MiB allocated; 0ms 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 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 #s(approx (+ (* (* im re) 1/2) im) (*.f64 (*.f64 re im) #s(literal 1/2 binary64))) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) im im) re im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im re) #s(literal 1/2 binary64) im) re im)))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
Calls

1 calls:

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

Compiled 5 to 5 computations (0% saved)

regimes10.0ms (0.1%)

Memory
13.6MiB live, 13.6MiB 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 re im))))
#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 im re 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) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 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 (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im))))
Calls

5 calls:

2.0ms
(sin.f64 im)
2.0ms
im
2.0ms
re
2.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
1.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
37.5%2re
37.5%2(exp.f64 re)
32.8%2im
32.6%2(sin.f64 im)
37.7%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes29.0ms (0.4%)

Memory
-33.4MiB live, 12.9MiB allocated; 3ms collecting garbage
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#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 im re 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 im re im)))
Calls

5 calls:

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

Compiled 11 to 15 computations (-36.4% saved)

regimes7.0ms (0.1%)

Memory
14.6MiB live, 14.6MiB allocated; 0ms 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 re im))))
#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 re im))))
Calls

5 calls:

1.0ms
im
1.0ms
(sin.f64 im)
1.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
1.0ms
re
1.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
30.0%2re
30.1%2im
29.7%2(sin.f64 im)
30.0%2(exp.f64 re)
30.1%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes5.0ms (0.1%)

Memory
10.2MiB live, 10.2MiB 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 re im))))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
Calls

5 calls:

1.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
9.1%1(sin.f64 im)
9.1%1(exp.f64 re)
9.1%1re
9.1%1im
9.1%1(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999969957373405
16218139579114074000.0
0.0ms
1.5268568277078913e-154
7.597544690701869e-152
0.0ms
-0.04381477246631678
-0.0
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
0.9999969957373405
16218139579114074000.0
0.0ms
1.5268568277078913e-154
7.597544690701869e-152
0.0ms
-0.04381477246631678
-0.0
0.0ms
-inf
-0.9987055258996151
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
0.9999969957373405
16218139579114074000.0
0.0ms
1.5268568277078913e-154
7.597544690701869e-152
0.0ms
-0.04381477246631678
-0.0
0.0ms
-inf
-0.9987055258996151
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999969957373405
16218139579114074000.0
0.0ms
1.5268568277078913e-154
7.597544690701869e-152
0.0ms
-0.04381477246631678
-0.0
0.0ms
-inf
-0.9987055258996151
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999969957373405
16218139579114074000.0
0.0ms
1.5268568277078913e-154
7.597544690701869e-152
0.0ms
-0.04381477246631678
-0.0
0.0ms
-inf
-0.9987055258996151
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999969957373405
16218139579114074000.0
0.0ms
-inf
-0.9987055258996151
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
2.23747471926422e-309
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.23747471926422e-309
2.2439895863451696e-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
2.23747471926422e-309
2.2439895863451696e-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
1.5268568277078913e-154
7.597544690701869e-152
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
2.23747471926422e-309
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
2.23747471926422e-309
2.2439895863451696e-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
1.144559806775058e-8
0.05829816620250431
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.10284903012619036
0.17116831842904748
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
0.9194628997384421
0.9210966903474112
Compiler

Compiled 8 to 10 computations (-25% saved)

simplify77.0ms (1.1%)

Memory
-30.4MiB live, 61.2MiB allocated; 7ms collecting garbage
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01461096
11951079
23551079
310371078
462841072
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (sin.f64 im))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 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)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #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)) #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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 binary64)) (*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #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)) #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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 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 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #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)) #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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 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 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 binary64)) #s(approx (* (exp re) (sin im)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 binary64)) #s(approx (* (exp re) (sin im)) (sin.f64 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)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #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)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 404804506614621/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (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)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 404804506614621/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im)))) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im 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 0 binary64)) #s(approx (* (exp re) (sin im)) #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 #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 404804506614621/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392 binary64)) #s(approx (* (exp re) (sin im)) #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 #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 3022314549036573/151115727451828646838272 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im))) #s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im)))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 5404319552844595/36028797018963968 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 (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im)))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 im re im)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 8286623314361713/9007199254740992 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 re im)))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
Outputs
(*.f64 (exp.f64 re) (sin.f64 im))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 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)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #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)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 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)) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 binary64)) (*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #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)) #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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 binary64)) (*.f64 (/.f64 (sin.f64 im) #s(approx (- (* 4 (cosh re)) (* 4 (sinh re))) (fma.f64 #s(literal -4 binary64) re #s(literal 4 binary64)))) #s(literal 4 binary64)) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 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 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #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)) #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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 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 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 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 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 binary64)) (not (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 binary64)) #s(approx (* (exp re) (sin im)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -5764607523034235/144115188075855872 binary64)) (not (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 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)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 1 binary64)) #s(approx (* (exp re) (sin im)) (sin.f64 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)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (* (+ (* -1/6 (* im im)) 1) (exp re)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64))) re (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #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)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 404804506614621/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (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)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 404804506614621/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im im)))) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) (*.f64 #s(literal 1/6 binary64) re)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3019169939857233/15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (* (* (+ (* -1/6 (* im im)) 1) (exp re)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re im 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 0 binary64)) #s(approx (* (exp re) (sin im)) #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 #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 404804506614621/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392 binary64)) #s(approx (* (exp re) (sin im)) #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 #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 3022314549036573/151115727451828646838272 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im))) #s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im)))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 5404319552844595/36028797018963968 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 (+ (* (+ (* (* im re) 1/2) im) re) im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im)))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 im re im)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 8286623314361713/9007199254740992 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 re im)))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))

derivations1.5s (20.3%)

Memory
25.7MiB live, 1 264.8MiB allocated; 155ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071192
1274181
21066169
35077163
08552143
02611119
1958995
23868946
08111871
0215921
1812805
23281764
08357696
035217
058217
1181217
01271217
059
089
1129
2409
32939
046219
0204825
1774755
23511745
09207673
Stop Event
fuel
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
iter limit
node limit
Compiler

Compiled 1 083 to 150 computations (86.1% saved)

preprocess354.0ms (4.9%)

Memory
20.2MiB live, 339.3MiB allocated; 160ms collecting garbage
Compiler

Compiled 2 628 to 526 computations (80% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...