math.cos on complex, real part

Time bar (total: 7.6s)

start0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated

analyze0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
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 13 to 12 computations (7.7% saved)

sample1.6s (21.3%)

Memory
129.5MiB live, 2 200.3MiB allocated
Samples
1.1s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 924.0ms
ival-cos: 452.0ms (48.9% of total)
ival-mult: 194.0ms (21% of total)
ival-exp: 141.0ms (15.3% of total)
ival-add: 71.0ms (7.7% of total)
ival-neg: 49.0ms (5.3% of total)
ival-true: 7.0ms (0.8% of total)
exact: 5.0ms (0.5% of total)
ival-assert: 4.0ms (0.4% of total)
Bogosity

explain129.0ms (1.7%)

Memory
-6.2MiB live, 240.5MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(exp.f64 im)
00-0-(neg.f64 im)
03(5.367647227497683e+77 422.24717997722735)0-(exp.f64 (neg.f64 im))
00-0-(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
00-0-(cos.f64 re)
00-0-im
00-0-(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
00-0-re
00-0-#s(literal 1/2 binary64)
00-0-(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
exp.f64(exp.f64 (neg.f64 im))sensitivity30
Confusion
Predicted +Predicted -
+00
-3253
Precision
0.0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-30253
Precision?
0.0
Recall?
0/0
Freqs
test
numberfreq
0253
13
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-100
Precision?
0.0
Recall?
0/0
Samples
48.0ms512×0valid
Compiler

Compiled 81 to 34 computations (58% saved)

Precisions
Click to see histograms. Total time spent on operations: 33.0ms
ival-cos: 14.0ms (43.1% of total)
ival-exp: 7.0ms (21.5% of total)
ival-mult: 6.0ms (18.5% of total)
ival-add: 2.0ms (6.2% of total)
ival-neg: 2.0ms (6.2% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess165.0ms (2.2%)

Memory
-20.6MiB live, 252.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02557
111055
231855
3119933
4702833
01011
01711
14411
212711
352811
424847
090397
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (cosh.f64 im) (cos.f64 re)) #s(literal 1 binary64))
Symmetry

(abs im)

(abs re)

Compiler

Compiled 11 to 10 computations (9.1% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 11 to 10 computations (9.1% saved)

simplify127.0ms (1.7%)

Memory
24.5MiB live, 215.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(cos.f64 re)
cost-diff0
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
cost-diff2
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
cost-diff2
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01033
01733
14433
212733
352833
4248427
0903927
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(cos.f64 re)
re
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (cosh.f64 im) (cos.f64 re)) #s(literal 1 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(cos.f64 re)
re
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 #s(literal 2 binary64) (cosh.f64 im))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)

localize73.0ms (1%)

Memory
-16.4MiB live, 98.5MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(exp.f64 (neg.f64 im))
accuracy0.0
(cos.f64 re)
accuracy0.00390625
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
accuracy0.00390625
(exp.f64 im)
Samples
66.0ms256×0valid
Compiler

Compiled 35 to 12 computations (65.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 32.0ms
ival-cos: 19.0ms (59.8% of total)
ival-exp: 7.0ms (22% of total)
ival-mult: 3.0ms (9.4% of total)
ival-add: 1.0ms (3.1% of total)
ival-neg: 1.0ms (3.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series7.0ms (0.1%)

Memory
12.2MiB live, 12.2MiB allocated
Counts
6 → 34
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(cos.f64 re)
(exp.f64 im)
(exp.f64 (neg.f64 im))
Outputs
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (cos re))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(+ 1 (* -1 im))
(+ 1 (* im (- (* 1/2 im) 1)))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(+ (exp im) (exp (neg im)))
(exp im)
(exp (neg im))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ (exp im) (exp (* -1 im)))
(exp (* -1 im))
Calls

6 calls:

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

simplify155.0ms (2.1%)

Memory
-29.2MiB live, 157.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0119387
1439355
21768346
36979346
08096312
Stop Event
iter limit
node limit
Counts
34 → 34
Calls
Call 1
Inputs
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (cos re))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(+ 1 (* -1 im))
(+ 1 (* im (- (* 1/2 im) 1)))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(+ (exp im) (exp (neg im)))
(exp im)
(exp (neg im))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ (exp im) (exp (* -1 im)))
(exp (* -1 im))
Outputs
(* 1/2 (+ (exp im) (exp (neg im))))
(fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 re re) (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64) (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))) (*.f64 re re) #s(literal 1/2 binary64))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/720 binary64) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (*.f64 re re) #s(literal 1 binary64))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 im im) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (cos.f64 re)) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im #s(literal 1 binary64)) (cos.f64 re)))
2
#s(literal 2 binary64)
(+ 2 (pow im 2))
(fma.f64 im im #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) (fma.f64 im im #s(literal 2 binary64)))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (fma.f64 im im #s(literal 2 binary64)))
(+ 1 im)
(+.f64 #s(literal 1 binary64) im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) im #s(literal 1/2 binary64)) im #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ 1 (* -1 im))
(-.f64 #s(literal 1 binary64) im)
(+ 1 (* im (- (* 1/2 im) 1)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) im #s(literal 1/2 binary64)) im) #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp im)
(exp.f64 im)
(exp (neg im))
(exp.f64 (neg.f64 im))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp (* -1 im))
(exp.f64 (neg.f64 im))

rewrite185.0ms (2.4%)

Memory
9.1MiB live, 238.7MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01028
01728
15724
240822
3474322
0828422
Stop Event
iter limit
node limit
iter limit
Counts
6 → 406
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(cos.f64 re)
(exp.f64 im)
(exp.f64 (neg.f64 im))
Outputs
(*.f64 (/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re)) #s(literal 1/2 binary64)) (-.f64 (pow.f64 (exp.f64 im) #s(literal -4 binary64)) (pow.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64)))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (expm1.f64 (*.f64 #s(literal 2 binary64) im))))
(*.f64 (/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re)) #s(literal 1/2 binary64)) (+.f64 (pow.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -6 binary64)))) (fma.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (-.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (pow.f64 (exp.f64 im) #s(literal -4 binary64))))
(*.f64 (/.f64 (*.f64 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))
(*.f64 (/.f64 (*.f64 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 im)) #s(literal 1/2 binary64))
(*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(*.f64 #s(literal 2 binary64) (*.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 im)))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal 2 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(/.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im)))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(/.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal 2 binary64) im)))) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(/.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(/.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im)) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im)) #s(literal 3 binary64))) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im))))))
(/.f64 (neg.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re)) #s(literal 1/2 binary64))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(/.f64 (neg.f64 (*.f64 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))) (neg.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 2 binary64)))))
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re)) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 3 binary64))) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (exp.f64 im) #s(literal 1/2 binary64))) (cos.f64 re)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 2 binary64))))
(fma.f64 (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (exp.f64 (neg.f64 im)) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (exp.f64 (neg.f64 im)) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) (exp.f64 im)))
(fma.f64 (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (exp.f64 (neg.f64 im)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) (exp.f64 im)))
(fma.f64 (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im))))
(fma.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (fma.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))))
(fma.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (fma.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))))
(fma.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 im) (sinh.f64 im))))
(fma.f64 (*.f64 (cosh.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im))))
(fma.f64 (*.f64 (cosh.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (fma.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))))
(fma.f64 (*.f64 (cosh.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (fma.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))))
(fma.f64 (*.f64 (cosh.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cosh.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 im) (sinh.f64 im))))
(fma.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (*.f64 #s(literal 0 binary64) (sin.f64 re)) (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (cos.f64 re))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) (exp.f64 im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)))
(fma.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)))
(fma.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) (exp.f64 im)))
(fma.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 #s(literal 0 binary64) (sin.f64 re)) (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 #s(literal 1 binary64) (cosh.f64 im))))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) (exp.f64 im)))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (cosh.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im))))
(fma.f64 (cosh.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (fma.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))))
(fma.f64 (cosh.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (fma.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))))
(fma.f64 (cosh.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (cosh.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 im) (sinh.f64 im))))
(fma.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)))
(fma.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) (exp.f64 im)))
(fma.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (cosh.f64 im) (fma.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (cosh.f64 im) (fma.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (cosh.f64 im) (*.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (cosh.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 im) (sinh.f64 im))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) (exp.f64 im)))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (cosh.f64 im)) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (cosh.f64 im)) (fma.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (cosh.f64 im)) (fma.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (cosh.f64 im)) (*.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (cosh.f64 im)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 im) (sinh.f64 im))))
(fma.f64 (cos.f64 re) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (cos.f64 re) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) (exp.f64 im)))
(fma.f64 (cos.f64 re) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (cos.f64 re) (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (cosh.f64 im)) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (cosh.f64 im)) (fma.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (cosh.f64 im)) (fma.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (cosh.f64 im)) (*.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (cosh.f64 im)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 im) (sinh.f64 im))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 im) (cos.f64 re)) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) (exp.f64 im)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))) (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))))
(-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (cos.f64 re)))
(-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (neg.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re))) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))))
(-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (neg.f64 (cos.f64 re)) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 #s(literal -1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re))))
(-.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (neg.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64))) (cos.f64 re)))
(-.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (neg.f64 (*.f64 (exp.f64 im) (cos.f64 re))) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (neg.f64 (cos.f64 re)) (*.f64 (exp.f64 im) #s(literal 1/2 binary64))))
(-.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 #s(literal -1/2 binary64) (*.f64 (exp.f64 im) (cos.f64 re))))
(-.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im)))
(+.f64 (fma.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (*.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(+.f64 (*.f64 (*.f64 #s(literal 0 binary64) (sin.f64 re)) (*.f64 #s(literal 1 binary64) (cosh.f64 im))) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 #s(literal 1 binary64) (cosh.f64 im))))
(+.f64 (*.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(+.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (*.f64 #s(literal 0 binary64) (sin.f64 re))) (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (cos.f64 re))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (cosh.f64 im) (exp.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (-.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im))))
(+.f64 (*.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (fma.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re))))
(+.f64 (*.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (fma.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))))
(+.f64 (*.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 im) (sinh.f64 im))))
(+.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)))
(+.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) (exp.f64 im)))
(+.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(*.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))
(*.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 (/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -4 binary64)) (pow.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64)))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (expm1.f64 (*.f64 #s(literal 2 binary64) im))))
(*.f64 (/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (+.f64 (pow.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -6 binary64)))) (fma.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (-.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (pow.f64 (exp.f64 im) #s(literal -4 binary64))))
(*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 (/.f64 (*.f64 #s(literal -2 binary64) im) #s(literal 2 binary64))) (cosh.f64 (/.f64 (-.f64 (neg.f64 im) (neg.f64 im)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 #s(literal 1 binary64) (cosh.f64 (/.f64 (*.f64 #s(literal -2 binary64) im) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 #s(literal 1 binary64) (cosh.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 2 binary64))) #s(literal 1 binary64)))
(*.f64 #s(literal 2 binary64) (cosh.f64 im))
(*.f64 (cosh.f64 im) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64))) (+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (pow.f64 (-.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 2 binary64))) (+.f64 (cosh.f64 im) (-.f64 (sinh.f64 im) (exp.f64 im))))
(/.f64 (-.f64 (pow.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64))) (+.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 im)))
(/.f64 (-.f64 (pow.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64))) (-.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 (neg.f64 im))))
(/.f64 (-.f64 (pow.f64 (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64))) (-.f64 (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) (sinh.f64 im)))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) #s(literal 2 binary64))) (-.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (pow.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) #s(literal 2 binary64))) (-.f64 (cosh.f64 im) (-.f64 (exp.f64 im) (sinh.f64 im))))
(/.f64 (-.f64 (pow.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (+.f64 (pow.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (fma.f64 (sinh.f64 im) (sinh.f64 im) (*.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (-.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (+.f64 (pow.f64 (-.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (-.f64 (sinh.f64 im) (exp.f64 im))))))
(/.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (+.f64 (pow.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 (neg.f64 im))))))
(/.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (+.f64 (pow.f64 (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) (sinh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (-.f64 (exp.f64 im) (sinh.f64 im))))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal 2 binary64) im)))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (pow.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)) (*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (pow.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)) #s(literal 2 binary64)))
(/.f64 (fma.f64 #s(literal 1 binary64) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (*.f64 (exp.f64 (neg.f64 im)) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (*.f64 (exp.f64 (neg.f64 im)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 #s(literal 1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (*.f64 (exp.f64 (neg.f64 im)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)))))
(/.f64 (fma.f64 #s(literal 1 binary64) (neg.f64 (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) #s(literal -1 binary64))) (*.f64 (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im))))
(/.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)))))
(/.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (neg.f64 (exp.f64 im)) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) #s(literal -1 binary64))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (neg.f64 (exp.f64 im))))
(/.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (exp.f64 im) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) #s(literal 1 binary64))) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (exp.f64 (neg.f64 im)) (*.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) #s(literal 1 binary64))) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (*.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (*.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (exp.f64 (neg.f64 im)) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))) #s(literal 1 binary64))) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))
(/.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (fma.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 im)) (*.f64 (neg.f64 (exp.f64 im)) #s(literal 1 binary64))) (*.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im))))
(/.f64 (fma.f64 #s(literal -1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (*.f64 (neg.f64 (exp.f64 im)) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (*.f64 (neg.f64 (exp.f64 im)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (fma.f64 #s(literal 1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (*.f64 (exp.f64 im) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (*.f64 (exp.f64 im) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -4 binary64)) (pow.f64 (exp.f64 im) #s(literal 4 binary64))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -6 binary64)) (pow.f64 (exp.f64 im) #s(literal 6 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (exp.f64 im) #s(literal -4 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -6 binary64)) (pow.f64 (exp.f64 im) #s(literal 6 binary64))) (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal 2 binary64) im))) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 9 binary64)) (pow.f64 (exp.f64 im) #s(literal -9 binary64))) (*.f64 (+.f64 (expm1.f64 (*.f64 im #s(literal 6 binary64))) (pow.f64 (exp.f64 im) #s(literal -6 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im)))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(neg.f64 (/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))))
(neg.f64 (/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))))
(fma.f64 (pow.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (exp.f64 im))
(fma.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) #s(literal -1 binary64)) (exp.f64 im))
(fma.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))) #s(literal -1 binary64)) (exp.f64 im))
(fma.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) #s(literal 1 binary64)) (exp.f64 (neg.f64 im)))
(fma.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) #s(literal 1 binary64)) (exp.f64 im))
(fma.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))) #s(literal 1 binary64)) (exp.f64 (neg.f64 im)))
(fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (-.f64 (pow.f64 (exp.f64 im) #s(literal -4 binary64)) (pow.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64)))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (expm1.f64 (*.f64 #s(literal 2 binary64) im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (+.f64 (pow.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -6 binary64)))) (fma.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (-.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (pow.f64 (exp.f64 im) #s(literal -4 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(fma.f64 (pow.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (exp.f64 (neg.f64 im)))
(fma.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))) (exp.f64 (neg.f64 im)))
(fma.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (exp.f64 im))
(fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (-.f64 (pow.f64 (exp.f64 im) #s(literal -4 binary64)) (pow.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64)))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (expm1.f64 (*.f64 #s(literal 2 binary64) im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (+.f64 (pow.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -6 binary64)))) (fma.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (-.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (pow.f64 (exp.f64 im) #s(literal -4 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) (exp.f64 im))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal -3/2 binary64)) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal 3/2 binary64)) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(fma.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)) (/.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(fma.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 (exp.f64 im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 im)))
(fma.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (exp.f64 im)) (exp.f64 im))
(fma.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im)))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 im) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (exp.f64 (neg.f64 im)))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (exp.f64 im) (exp.f64 im))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (exp.f64 im))
(fma.f64 #s(literal 1 binary64) (exp.f64 im) (exp.f64 (neg.f64 im)))
(fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)) (exp.f64 im))
(fma.f64 #s(literal 2 binary64) (/.f64 (cosh.f64 im) #s(literal 2 binary64)) (-.f64 (exp.f64 im) (sinh.f64 im)))
(fma.f64 #s(literal 2 binary64) (/.f64 (cosh.f64 im) #s(literal 2 binary64)) (cosh.f64 im))
(fma.f64 (exp.f64 im) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(fma.f64 (exp.f64 im) #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(fma.f64 (exp.f64 (neg.f64 im)) (/.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(fma.f64 (exp.f64 (neg.f64 im)) (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(fma.f64 (exp.f64 (neg.f64 im)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (exp.f64 (neg.f64 im)))
(fma.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64) (exp.f64 im))
(-.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(-.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 im))
(-.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(-.f64 (cosh.f64 im) (-.f64 (sinh.f64 im) (exp.f64 im)))
(+.f64 (-.f64 (exp.f64 im) (sinh.f64 im)) (cosh.f64 im))
(+.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 (neg.f64 im)))
(+.f64 (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) (sinh.f64 im))
(+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(+.f64 (sinh.f64 (neg.f64 im)) (+.f64 (cosh.f64 im) (exp.f64 im)))
(+.f64 (sinh.f64 im) (+.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (cosh.f64 im) (-.f64 (exp.f64 im) (sinh.f64 im)))
(+.f64 (cosh.f64 im) (cosh.f64 im))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(fma.f64 (*.f64 #s(literal 0 binary64) (sin.f64 re)) #s(literal 1/2 binary64) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 0 binary64) (sin.f64 re)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (*.f64 #s(literal 0 binary64) (sin.f64 re)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 0 binary64) (sin.f64 re))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 0 binary64) (sin.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64))) (sin.f64 (-.f64 re (/.f64 (PI.f64) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 re) #s(literal 3 binary64)) #s(literal 0 binary64) (*.f64 (pow.f64 (cos.f64 re) #s(literal 3 binary64)) #s(literal 1 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 0 binary64) (sin.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 0 binary64) (sin.f64 re)) (*.f64 #s(literal 1 binary64) (cos.f64 re))))))
(fma.f64 (sin.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (*.f64 re re)))) (cos.f64 (/.f64 (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 3 binary64)) (fma.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (*.f64 re re)))) (*.f64 (cos.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (*.f64 re re)))) (sin.f64 (/.f64 (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 3 binary64)) (fma.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (*.f64 re re))))))
(fma.f64 (neg.f64 (sin.f64 re)) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(fma.f64 #s(literal 0 binary64) (sin.f64 re) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(fma.f64 (sin.f64 re) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(fma.f64 #s(literal 1 binary64) (cos.f64 re) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 re))))
(fma.f64 #s(literal 1 binary64) (cos.f64 re) (*.f64 #s(literal 0 binary64) (sin.f64 re)))
(fma.f64 (cos.f64 re) #s(literal 1 binary64) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 re))))
(fma.f64 (cos.f64 re) #s(literal 1 binary64) (*.f64 #s(literal 0 binary64) (sin.f64 re)))
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 re re) (-.f64 re (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (/.f64 (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 2 binary64)) (-.f64 re (/.f64 (PI.f64) #s(literal 2 binary64)))))) (*.f64 (cos.f64 (/.f64 (*.f64 re re) (-.f64 re (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (/.f64 (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 2 binary64)) (-.f64 re (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(-.f64 (*.f64 #s(literal 0 binary64) (sin.f64 re)) (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)))
(cos.f64 (neg.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (*.f64 re re)))) (cos.f64 (/.f64 (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 3 binary64)) (fma.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (*.f64 re re))))) (*.f64 (cos.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (*.f64 re re)))) (sin.f64 (/.f64 (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 3 binary64)) (fma.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (*.f64 re re))))))
(+.f64 (*.f64 (neg.f64 (sin.f64 re)) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 re))))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 #s(literal 0 binary64) (sin.f64 re)))
(+.f64 (*.f64 #s(literal 0 binary64) (sin.f64 re)) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))
(*.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 (exp.f64 im)) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(*.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))
(*.f64 #s(literal 1 binary64) (exp.f64 im))
(*.f64 (exp.f64 im) #s(literal 1 binary64))
(*.f64 (exp.f64 (neg.f64 im)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))
(pow.f64 (*.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)) (pow.f64 (exp.f64 im) #s(literal 3/2 binary64))) #s(literal 2 binary64))
(pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 (exp.f64 im) #s(literal 3/2 binary64))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 im) #s(literal 1 binary64))
(pow.f64 (exp.f64 (neg.f64 im)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (-.f64 (sinh.f64 im) (cosh.f64 im)))
(/.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (*.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 4 binary64))
(/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fabs.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (*.f64 (sinh.f64 (neg.f64 im)) (exp.f64 (neg.f64 im)))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (fma.f64 (sinh.f64 im) (sinh.f64 im) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (exp.f64 im)))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(fma.f64 #s(literal 1 binary64) (sinh.f64 im) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(fma.f64 #s(literal 1 binary64) (cosh.f64 im) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(fma.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(fma.f64 #s(literal 2 binary64) (/.f64 (cosh.f64 im) #s(literal 2 binary64)) (sinh.f64 im))
(fma.f64 (sinh.f64 im) #s(literal 1 binary64) (*.f64 (cosh.f64 im) #s(literal 1 binary64)))
(fma.f64 (cosh.f64 im) #s(literal 1 binary64) (*.f64 (sinh.f64 im) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(sqrt.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (exp.f64 (neg.f64 im))) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (exp.f64 (neg.f64 im))))
(-.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(fabs.f64 (neg.f64 (exp.f64 im)))
(fabs.f64 (exp.f64 im))
(exp.f64 (fma.f64 im #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (fma.f64 #s(literal -2 binary64) im (*.f64 #s(literal 3 binary64) im)))
(exp.f64 (*.f64 im #s(literal 1 binary64)))
(exp.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 2 binary64)))
(exp.f64 im)
(+.f64 (*.f64 (sinh.f64 im) #s(literal 1 binary64)) (*.f64 (cosh.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 (cosh.f64 im) #s(literal 1 binary64)) (*.f64 (sinh.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (sinh.f64 im)) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(+.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(+.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(+.f64 (sinh.f64 im) (cosh.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 im))
(*.f64 (pow.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))
(*.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (exp.f64 im)))
(*.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (exp.f64 im))
(*.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(*.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64))
(pow.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -3/2 binary64)) (neg.f64 (exp.f64 im))) #s(literal 2 binary64))
(pow.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -3/2 binary64)) (exp.f64 im)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 (exp.f64 im))) #s(literal -1 binary64))
(pow.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 im) #s(literal -1 binary64))
(pow.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64))
(/.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)))
(/.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))) #s(literal 4 binary64))
(/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fabs.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)))))
(/.f64 (fabs.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (fabs.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (fma.f64 (sinh.f64 im) (sinh.f64 im) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 im))))
(/.f64 #s(literal 1 binary64) (exp.f64 im))
(neg.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)))
(fma.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(fma.f64 #s(literal 1 binary64) (cosh.f64 im) (*.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im))))
(fma.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 im) #s(literal 1/2 binary64)) (*.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im))))
(fma.f64 #s(literal 2 binary64) (/.f64 (cosh.f64 im) #s(literal 2 binary64)) (sinh.f64 (neg.f64 im)))
(fma.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64) (*.f64 (cosh.f64 im) #s(literal 1 binary64)))
(fma.f64 (cosh.f64 im) #s(literal 1 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im))))
(sqrt.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)))
(-.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (exp.f64 im)) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (exp.f64 im)))
(-.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(-.f64 (cosh.f64 im) (sinh.f64 im))
(fabs.f64 (-.f64 (sinh.f64 im) (cosh.f64 im)))
(fabs.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)))
(fabs.f64 (exp.f64 (neg.f64 im)))
(exp.f64 (fma.f64 #s(literal -2 binary64) im im))
(exp.f64 (fma.f64 #s(literal -3 binary64) im (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (*.f64 (*.f64 im #s(literal -1 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (neg.f64 im) #s(literal 1 binary64)))
(exp.f64 (/.f64 (*.f64 #s(literal -2 binary64) im) #s(literal 2 binary64)))
(exp.f64 (*.f64 im #s(literal -1 binary64)))
(exp.f64 (neg.f64 im))
(+.f64 (cosh.f64 (*.f64 im #s(literal -1 binary64))) (sinh.f64 (*.f64 im #s(literal -1 binary64))))
(+.f64 (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64)) (*.f64 (cosh.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 (cosh.f64 im) #s(literal 1 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im))) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(+.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im))))
(+.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)))) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)))))
(+.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))

eval62.0ms (0.8%)

Memory
28.8MiB live, 133.5MiB allocated
Compiler

Compiled 9 981 to 1 437 computations (85.6% saved)

prune28.0ms (0.4%)

Memory
-20.2MiB live, 23.6MiB allocated
Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New4334437
Fresh000
Picked101
Done000
Total4344438
Accuracy
100.0%
Counts
438 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.7%
(fma.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
100.0%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
78.6%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
54.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Compiler

Compiled 54 to 44 computations (18.5% saved)

simplify359.0ms (4.8%)

Memory
5.5MiB live, 205.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 16 expressions of interest:

NewMetricScoreProgram
cost-diff0
(exp.f64 im)
cost-diff0
(cosh.f64 im)
cost-diff0
(+.f64 (cosh.f64 im) (exp.f64 im))
cost-diff13
(fma.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
cost-diff0
(cos.f64 re)
cost-diff0
(cosh.f64 im)
cost-diff0
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
cost-diff2
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
cost-diff0
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
cost-diff0
(cos.f64 re)
cost-diff0
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
cost-diff0
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
cost-diff0
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
cost-diff0
(cos.f64 re)
cost-diff0
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
cost-diff0
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
026138
043121
199121
2279121
31030113
09109113
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(cos.f64 re)
re
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(cos.f64 re)
re
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
#s(literal 1 binary64)
(cosh.f64 im)
im
(cos.f64 re)
re
(fma.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (cosh.f64 im) (exp.f64 im))
(cosh.f64 im)
im
(exp.f64 im)
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(cos.f64 re)
re
#s(literal 1/2 binary64)
(*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (cos.f64 re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(cos.f64 re)
re
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(cos.f64 re)
re
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(cosh.f64 im)
#s(literal 1 binary64)
(cosh.f64 im)
im
(cos.f64 re)
re
(fma.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(*.f64 (cosh.f64 im) (cos.f64 re))
(+.f64 (cosh.f64 im) (exp.f64 im))
(+.f64 (exp.f64 im) (cosh.f64 im))
(cosh.f64 im)
im
(exp.f64 im)
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(cos.f64 re)
re
#s(literal 1/2 binary64)
(*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(sinh.f64 (neg.f64 im))
(neg.f64 im)

localize101.0ms (1.3%)

Memory
-1.0MiB live, 225.4MiB allocated
Localize:

Found 16 expressions of interest:

NewMetricScoreProgram
accuracy0.0078125
(+.f64 (cosh.f64 im) (exp.f64 im))
accuracy0.0078125
(sinh.f64 (neg.f64 im))
accuracy0.05859375
(*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
accuracy1.2148354933208234
(fma.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
accuracy0.0
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
accuracy0.0
(cos.f64 re)
accuracy0.00390625
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
accuracy0.00390625
(cosh.f64 im)
accuracy0.0
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
accuracy0.0
(cos.f64 re)
accuracy0.00390625
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
accuracy2.3145570514086944
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy0.0
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
accuracy0.0
(cos.f64 re)
accuracy0.00390625
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
accuracy2.4422569957352094
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
Samples
32.0ms145×0valid
25.0ms111×1exit
Compiler

Compiled 128 to 25 computations (80.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 38.0ms
ival-mult: 14.0ms (37.2% of total)
ival-cos: 6.0ms (15.9% of total)
adjust: 5.0ms (13.3% of total)
ival-add: 4.0ms (10.6% of total)
ival-exp: 3.0ms (8% of total)
ival-cosh: 3.0ms (8% of total)
ival-sinh: 1.0ms (2.7% of total)
ival-neg: 1.0ms (2.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series34.0ms (0.4%)

Memory
15.1MiB live, 62.2MiB allocated
Counts
14 → 66
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(cos.f64 re)
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(cosh.f64 im)
(fma.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (cosh.f64 im) (exp.f64 im))
(exp.f64 im)
(*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(sinh.f64 (neg.f64 im))
Outputs
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* 1/96 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/48 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* 1/96 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/48 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/1440 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* -1/2880 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))))))))
(* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(+ (* -1/8 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/96 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/2880 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/96 (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (cos re))
(cos re)
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/4 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (* (cos re) (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im))))))))
(* 1/4 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))
(+ 2 im)
(+ 2 (* im (+ 1 im)))
(+ 2 (* im (+ 1 (* im (+ 1 (* 1/6 im))))))
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(* -1/2 (* im (cos re)))
(* im (+ (* -1/2 (cos re)) (* -1/12 (* (pow im 2) (cos re)))))
(* im (+ (* -1/2 (cos re)) (* (pow im 2) (+ (* -1/12 (cos re)) (* -1/240 (* (pow im 2) (cos re)))))))
(* im (+ (* -1/2 (cos re)) (* (pow im 2) (+ (* -1/12 (cos re)) (* (pow im 2) (+ (* -1/240 (cos re)) (* -1/10080 (* (pow im 2) (cos re)))))))))
(* -1 im)
(* im (- (* -1/6 (pow im 2)) 1))
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(+ (exp im) (exp (neg im)))
(+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(exp im)
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ (exp im) (exp (* -1 im)))
(+ (* 1/4 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))) (* 1/2 (* (cos re) (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im))))))))
(* 1/4 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
Calls

6 calls:

TimeVariablePointExpression
18.0ms
im
@inf
((* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (cos re) (+ (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (+ (exp (neg im)) (exp im)) (* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (+ (cosh im) (exp im)) (exp im) (* (sinh (neg im)) (* (cos re) 1/2)) (sinh (neg im)))
4.0ms
im
@-inf
((* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (cos re) (+ (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (+ (exp (neg im)) (exp im)) (* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (+ (cosh im) (exp im)) (exp im) (* (sinh (neg im)) (* (cos re) 1/2)) (sinh (neg im)))
3.0ms
re
@0
((* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (cos re) (+ (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (+ (exp (neg im)) (exp im)) (* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (+ (cosh im) (exp im)) (exp im) (* (sinh (neg im)) (* (cos re) 1/2)) (sinh (neg im)))
3.0ms
re
@inf
((* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (cos re) (+ (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (+ (exp (neg im)) (exp im)) (* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (+ (cosh im) (exp im)) (exp im) (* (sinh (neg im)) (* (cos re) 1/2)) (sinh (neg im)))
3.0ms
re
@-inf
((* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (cos re) (+ (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (+ (exp (neg im)) (exp im)) (* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (+ (cosh im) (exp im)) (exp im) (* (sinh (neg im)) (* (cos re) 1/2)) (sinh (neg im)))

simplify162.0ms (2.1%)

Memory
3.4MiB live, 248.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02681211
110241060
24355981
08361893
Stop Event
iter limit
node limit
Counts
66 → 66
Calls
Call 1
Inputs
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* 1/96 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/48 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* 1/96 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/48 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/1440 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* -1/2880 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))))))))
(* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(+ (* -1/8 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/96 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/2880 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/96 (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (cos re))
(cos re)
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/4 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (* (cos re) (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im))))))))
(* 1/4 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))
(+ 2 im)
(+ 2 (* im (+ 1 im)))
(+ 2 (* im (+ 1 (* im (+ 1 (* 1/6 im))))))
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(* -1/2 (* im (cos re)))
(* im (+ (* -1/2 (cos re)) (* -1/12 (* (pow im 2) (cos re)))))
(* im (+ (* -1/2 (cos re)) (* (pow im 2) (+ (* -1/12 (cos re)) (* -1/240 (* (pow im 2) (cos re)))))))
(* im (+ (* -1/2 (cos re)) (* (pow im 2) (+ (* -1/12 (cos re)) (* (pow im 2) (+ (* -1/240 (cos re)) (* -1/10080 (* (pow im 2) (cos re)))))))))
(* -1 im)
(* im (- (* -1/6 (pow im 2)) 1))
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(+ (exp im) (exp (neg im)))
(+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(exp im)
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ (exp im) (exp (* -1 im)))
(+ (* 1/4 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))) (* 1/2 (* (cos re) (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im))))))))
(* 1/4 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
Outputs
(* 1/2 (+ (exp im) (exp (neg im))))
(fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(fma.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)))))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(fma.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(fma.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))
(fma.f64 (fma.f64 #s(literal 3/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 1/2 binary64) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/4 binary64)))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(fma.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/4 binary64) (fma.f64 (fma.f64 #s(literal 3/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 re re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* 1/96 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/48 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))))))))
(fma.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/4 binary64) (fma.f64 (fma.f64 #s(literal 3/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/96 binary64) (*.f64 re re) #s(literal -1/8 binary64)) (*.f64 (fma.f64 #s(literal 3/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(literal 1/48 binary64) (*.f64 re re)))) (*.f64 re re))))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/2 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* 1/96 (- (exp (neg im)) (/ 1 (exp (neg im))))) (+ (* 1/48 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* (pow re 2) (+ (* -1/1440 (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))) (* -1/2880 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))))))))
(fma.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/4 binary64) (fma.f64 (fma.f64 #s(literal 3/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/96 binary64) (*.f64 re re) #s(literal -1/8 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 3/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 (*.f64 #s(literal -1/2880 binary64) (*.f64 re re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 re re))) (*.f64 re re))))
(* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/4 binary64))
(+ (* -1/8 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/8 binary64) (*.f64 re re) #s(literal 1/4 binary64)))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/96 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/96 binary64) (*.f64 re re) #s(literal -1/8 binary64))) (*.f64 re re) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/4 binary64)))
(+ (* 1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/8 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/2880 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/96 (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(fma.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/8 binary64) (*.f64 re re) #s(literal 1/4 binary64)) (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/2880 binary64) (*.f64 re re) #s(literal 1/96 binary64)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(cos re)
(cos.f64 re)
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/4 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (* (cos re) (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im))))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 3/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 1/2 binary64) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/4 binary64))))
(* 1/4 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/4 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/24 binary64) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)))))
2
#s(literal 2 binary64)
(+ 2 (pow im 2))
(fma.f64 im im #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(fma.f64 im im (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) #s(literal 2 binary64)))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 im im (fma.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) #s(literal 2 binary64)))
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))
(-.f64 (cos.f64 re) #s(literal 0 binary64))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re))
(+ 2 im)
(+.f64 #s(literal 2 binary64) im)
(+ 2 (* im (+ 1 im)))
(fma.f64 (+.f64 #s(literal 1 binary64) im) im #s(literal 2 binary64))
(+ 2 (* im (+ 1 (* im (+ 1 (* 1/6 im))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64)) im #s(literal 2 binary64))
(+ 1 im)
(+.f64 #s(literal 1 binary64) im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) im #s(literal 1/2 binary64)) im #s(literal 1 binary64)) im #s(literal 1 binary64))
(* -1/2 (* im (cos re)))
(*.f64 (*.f64 (cos.f64 re) im) #s(literal -1/2 binary64))
(* im (+ (* -1/2 (cos re)) (* -1/12 (* (pow im 2) (cos re)))))
(*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/12 binary64) (*.f64 im im) #s(literal -1/2 binary64))) im)
(* im (+ (* -1/2 (cos re)) (* (pow im 2) (+ (* -1/12 (cos re)) (* -1/240 (* (pow im 2) (cos re)))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/240 binary64) (*.f64 im im) #s(literal -1/12 binary64))) (*.f64 (*.f64 (cos.f64 re) im) #s(literal -1/2 binary64)))
(* im (+ (* -1/2 (cos re)) (* (pow im 2) (+ (* -1/12 (cos re)) (* (pow im 2) (+ (* -1/240 (cos re)) (* -1/10080 (* (pow im 2) (cos re)))))))))
(*.f64 (fma.f64 (cos.f64 re) (fma.f64 #s(literal -1/12 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/10080 binary64) (*.f64 im im) #s(literal -1/240 binary64))))) im)
(* -1 im)
(neg.f64 im)
(* im (- (* -1/6 (pow im 2)) 1))
(*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(fma.f64 #s(literal 3/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(exp im)
(exp.f64 im)
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (* 1/4 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))) (* 1/2 (* (cos re) (+ (exp im) (* 1/2 (+ (exp im) (/ 1 (exp im))))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 3/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 1/2 binary64) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/4 binary64))))
(* 1/4 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/4 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))

rewrite53.0ms (0.7%)

Memory
5.8MiB live, 52.6MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
026103
04395
115182
0101182
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
14 → 129
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(cos.f64 re)
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(cosh.f64 im)
(fma.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (cosh.f64 im) (exp.f64 im))
(exp.f64 im)
(*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(sinh.f64 (neg.f64 im))
Outputs
(*.f64 (*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (cos.f64 re))
(*.f64 (*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) (cos.f64 re)))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(literal 1/2 binary64)) (cos.f64 re))
(*.f64 (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (cos.f64 re)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(*.f64 (cosh.f64 im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -2 binary64))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64)))) (*.f64 (+.f64 (expm1.f64 (+.f64 im im)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))
(cosh.f64 (neg.f64 im))
(cosh.f64 im)
(+.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (cosh.f64 im))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1 binary64)) (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) (cos.f64 re)) #s(literal 1 binary64))
(*.f64 (cosh.f64 im) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 im) (cos.f64 re)))
(*.f64 (cos.f64 re) (cosh.f64 im))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (cos.f64 re)) #s(literal 2 binary64))
(/.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(*.f64 (cosh.f64 im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -2 binary64))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64)))) (*.f64 (+.f64 (expm1.f64 (+.f64 im im)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))
(cosh.f64 (neg.f64 im))
(cosh.f64 im)
(+.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 #s(literal 1/2 binary64) (fma.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (cos.f64 re) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re))))
(*.f64 #s(literal 1/2 binary64) (fma.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re) (*.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (cos.f64 re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 2 binary64))) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) (*.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 2 binary64)) (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (neg.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (sinh.f64 (neg.f64 im))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im)))) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 2 binary64)) (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (sinh.f64 (neg.f64 im)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (sinh.f64 (neg.f64 im))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 3 binary64))) (fma.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im)))) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))))
(fma.f64 (*.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))))
(fma.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (sinh.f64 (neg.f64 im)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (cosh.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (cos.f64 re)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (sinh.f64 (neg.f64 im))))) (/.f64 (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (sinh.f64 (neg.f64 im))))))
(-.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) (*.f64 (neg.f64 (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re))) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) (*.f64 (neg.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (sinh.f64 (neg.f64 im))))
(-.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) (*.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 (*.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (cos.f64 re))) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (+.f64 (exp.f64 im) (cosh.f64 im))))
(-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 (+.f64 (exp.f64 im) (cosh.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 3 binary64)) (fma.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im)))) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64)) (fma.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im)))) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (cosh.f64 im))))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (-.f64 (exp.f64 im) (cosh.f64 im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (neg.f64 (-.f64 (cosh.f64 im) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (exp.f64 im) (-.f64 (exp.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (-.f64 (cosh.f64 im) (exp.f64 im)))
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (fma.f64 (exp.f64 im) (exp.f64 im) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (*.f64 (exp.f64 im) (cosh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (fma.f64 (exp.f64 im) (-.f64 (exp.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))
(fma.f64 (cosh.f64 im) #s(literal 1 binary64) (exp.f64 im))
(fma.f64 #s(literal 1 binary64) (cosh.f64 im) (exp.f64 im))
(-.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (-.f64 (cosh.f64 im) (exp.f64 im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (-.f64 (cosh.f64 im) (exp.f64 im))))
(-.f64 (exp.f64 im) (*.f64 (neg.f64 (cosh.f64 im)) #s(literal 1 binary64)))
(-.f64 (exp.f64 im) (*.f64 #s(literal -1 binary64) (cosh.f64 im)))
(+.f64 (+.f64 (cosh.f64 im) (cosh.f64 im)) (sinh.f64 im))
(+.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (fma.f64 (exp.f64 im) (-.f64 (exp.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (exp.f64 im) (-.f64 (exp.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(+.f64 (exp.f64 im) (cosh.f64 im))
(+.f64 (cosh.f64 im) (exp.f64 im))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (*.f64 (sinh.f64 im) (sinh.f64 im))) (exp.f64 (neg.f64 im)))
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 im) (sinh.f64 im)) (*.f64 (cosh.f64 im) (sinh.f64 im)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(fma.f64 (cosh.f64 im) #s(literal 1 binary64) (sinh.f64 im))
(fma.f64 #s(literal 1 binary64) (cosh.f64 im) (sinh.f64 im))
(-.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(exp.f64 im)
(+.f64 (sinh.f64 im) (cosh.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 im))
(*.f64 (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)) (cos.f64 re))
(*.f64 (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (sinh.f64 (neg.f64 im)))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (sinh.f64 (neg.f64 im))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64))
(neg.f64 (*.f64 (*.f64 (sinh.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal -2 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64))
(sinh.f64 (neg.f64 im))
(neg.f64 (sinh.f64 im))
(-.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))

eval45.0ms (0.6%)

Memory
-27.4MiB live, 63.8MiB allocated
Compiler

Compiled 5 347 to 675 computations (87.4% saved)

prune13.0ms (0.2%)

Memory
35.6MiB live, 35.6MiB allocated
Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New21614230
Fresh000
Picked314
Done000
Total21915234
Accuracy
100.0%
Counts
234 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
61.3%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
78.6%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
100.0%
(*.f64 (cosh.f64 im) (cos.f64 re))
91.4%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
87.6%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
53.1%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
38.3%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
47.3%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
32.5%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
50.1%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
32.0%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
48.0%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
29.5%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
54.7%
(*.f64 #s(literal 1/2 binary64) (fma.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (cos.f64 re) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re))))
54.2%
#s(approx (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (-.f64 (cos.f64 re) #s(literal 0 binary64)))
Compiler

Compiled 602 to 461 computations (23.4% saved)

simplify211.0ms (2.8%)

Memory
-0.2MiB live, 190.0MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (cos re) #s(literal 1 binary64))
cost-diff0
(cosh.f64 im)
cost-diff0
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
cost-diff2
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
cost-diff0
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
cost-diff0
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
cost-diff0
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
cost-diff0
(*.f64 re re)
cost-diff0
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
cost-diff0
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
cost-diff0
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
cost-diff0
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
cost-diff0
(cos.f64 re)
cost-diff0
(cosh.f64 im)
cost-diff0
(*.f64 (cosh.f64 im) (cos.f64 re))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
037249
058245
1109245
2266245
3907233
43971233
08114233
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (cosh.f64 im) (cos.f64 re))
(cosh.f64 im)
im
(cos.f64 re)
re
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
re
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
#s(literal -1/1440 binary64)
(*.f64 re re)
re
#s(literal 1/48 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
#s(literal 1 binary64)
(cosh.f64 im)
im
#s(approx (cos re) #s(literal 1 binary64))
Outputs
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 (cos.f64 re) (cosh.f64 im))
(cosh.f64 im)
im
(cos.f64 re)
re
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(*.f64 re re)
re
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
#s(literal -1/1440 binary64)
(*.f64 re re)
re
#s(literal 1/48 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) (cosh.f64 im))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(cosh.f64 im)
#s(literal 1 binary64)
(cosh.f64 im)
im
#s(approx (cos re) #s(literal 1 binary64))

localize130.0ms (1.7%)

Memory
-4.0MiB live, 139.3MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
accuracy0.00390625
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
accuracy0.00390625
(cosh.f64 im)
accuracy28.345658521946465
#s(approx (cos re) #s(literal 1 binary64))
accuracy0.08984375
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
accuracy0.2265625
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
accuracy29.324458314882648
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
accuracy30.67269333391633
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
accuracy0.0
(*.f64 re re)
accuracy0.00390625
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
accuracy13.68525596923674
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy30.62496679837439
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
accuracy0.00390625
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
accuracy28.34528911498156
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
accuracy29.324458314882648
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
accuracy0.0
(cos.f64 re)
accuracy0.00390625
(*.f64 (cosh.f64 im) (cos.f64 re))
accuracy0.00390625
(cosh.f64 im)
Samples
92.0ms256×0valid
Compiler

Compiled 183 to 34 computations (81.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 75.0ms
ival-mult: 49.0ms (65.4% of total)
const: 6.0ms (8% of total)
ival-add: 5.0ms (6.7% of total)
ival-cos: 5.0ms (6.7% of total)
ival-exp: 3.0ms (4% of total)
ival-cosh: 3.0ms (4% of total)
ival-sub: 1.0ms (1.3% of total)
exact: 1.0ms (1.3% of total)
ival-neg: 1.0ms (1.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series23.0ms (0.3%)

Memory
-11.7MiB live, 33.9MiB allocated
Counts
20 → 53
Calls
Call 1
Inputs
(*.f64 (cosh.f64 im) (cos.f64 re))
(cosh.f64 im)
(cos.f64 re)
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
Outputs
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(pow re 2)
-1/4
(- (* 1/48 (pow re 2)) 1/4)
(- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)
(* 1/48 re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(* 1/48 (pow re 2))
(* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(cos re)
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (cos re))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1/1440 (pow re 6))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* (pow re 6) (- (+ (* 1/48 (/ 1 (pow re 2))) (* 1/2 (/ 1 (pow re 6)))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/1440 (pow re 4))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/1440 (pow re 3))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(+ (exp im) (exp (neg im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ (exp im) (exp (* -1 im)))
Calls

6 calls:

TimeVariablePointExpression
14.0ms
re
@inf
((* (cosh im) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* re re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cos re) (+ (exp (neg im)) (exp im)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (* (+ (* -1/1440 (* re re)) 1/48) re) re))
3.0ms
re
@-inf
((* (cosh im) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* re re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cos re) (+ (exp (neg im)) (exp im)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (* (+ (* -1/1440 (* re re)) 1/48) re) re))
1.0ms
re
@0
((* (cosh im) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* re re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cos re) (+ (exp (neg im)) (exp im)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (* (+ (* -1/1440 (* re re)) 1/48) re) re))
1.0ms
im
@inf
((* (cosh im) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* re re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cos re) (+ (exp (neg im)) (exp im)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (* (+ (* -1/1440 (* re re)) 1/48) re) re))
1.0ms
im
@-inf
((* (cosh im) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* re re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cos re) (+ (exp (neg im)) (exp im)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (* (+ (* -1/1440 (* re re)) 1/48) re) re))

simplify134.0ms (1.8%)

Memory
-4.6MiB live, 185.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0162673
1576618
21952604
37441604
08035563
Stop Event
iter limit
node limit
Counts
53 → 53
Calls
Call 1
Inputs
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(pow re 2)
-1/4
(- (* 1/48 (pow re 2)) 1/4)
(- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)
(* 1/48 re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(* 1/48 (pow re 2))
(* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(cos re)
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (cos re))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1/1440 (pow re 6))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* (pow re 6) (- (+ (* 1/48 (/ 1 (pow re 2))) (* 1/2 (/ 1 (pow re 6)))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/1440 (pow re 4))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/1440 (pow re 3))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(+ (exp im) (exp (neg im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ (exp im) (exp (* -1 im)))
Outputs
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(fma.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) re) re #s(literal -1/4 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 re re) (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) re) re (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/720 binary64)) #s(literal 1/2 binary64))) (*.f64 re re) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (exp (neg im))))
(fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(fma.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) re) re #s(literal -1/4 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 re re) (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64) (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))) (*.f64 re re) #s(literal 1/2 binary64))
(pow re 2)
(*.f64 re re)
-1/4
#s(literal -1/4 binary64)
(- (* 1/48 (pow re 2)) 1/4)
(-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))
(- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)
(fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64) (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)))
(* 1/48 re)
(*.f64 #s(literal 1/48 binary64) re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(* 1/48 (pow re 2))
(*.f64 #s(literal 1/48 binary64) (*.f64 re re))
(* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (cos.f64 re))
(cos re)
(cos.f64 re)
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (cos.f64 re))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* -1/4 (pow re 2))
(*.f64 (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(* -1/1440 (pow re 6))
(*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal -1/1440 binary64))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (pow.f64 re #s(literal 6 binary64)))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 re #s(literal 6 binary64)))
(* (pow re 6) (- (+ (* 1/48 (/ 1 (pow re 2))) (* 1/2 (/ 1 (pow re 6)))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 6 binary64))) (/.f64 #s(literal -1/48 binary64) (*.f64 re re))) (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/1440 binary64))) (pow.f64 re #s(literal 6 binary64)))
(* -1/1440 (pow re 4))
(*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64)))
(* -1/1440 (pow re 3))
(*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/1440 binary64))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)))
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/48 binary64) (*.f64 re re)) #s(literal -1 binary64) #s(literal -1/1440 binary64)) (pow.f64 re #s(literal 3 binary64)))
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (cos.f64 re)) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re)))
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
2
#s(literal 2 binary64)
(+ 2 (pow im 2))
(fma.f64 im im #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) (fma.f64 im im #s(literal 2 binary64)))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (fma.f64 im im #s(literal 2 binary64)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (cos.f64 re))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))

rewrite84.0ms (1.1%)

Memory
-8.6MiB live, 95.0MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
037209
058205
1190195
01187195
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
20 → 149
Calls
Call 1
Inputs
(*.f64 (cosh.f64 im) (cos.f64 re))
(cosh.f64 im)
(cos.f64 re)
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
Outputs
(*.f64 (*.f64 (cos.f64 re) #s(literal 1 binary64)) (cosh.f64 im))
(*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im)))
(*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) #s(literal 1 binary64))
(*.f64 (cos.f64 re) (cosh.f64 im))
(*.f64 (cosh.f64 im) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(*.f64 (cosh.f64 im) (cos.f64 re))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (cos.f64 re)) #s(literal 2 binary64))
(/.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(*.f64 (cosh.f64 im) #s(literal 1 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -2 binary64))
(/.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 2 binary64)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64)))) (*.f64 (+.f64 (expm1.f64 (+.f64 im im)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))
(cosh.f64 (neg.f64 (neg.f64 im)))
(cosh.f64 (neg.f64 im))
(cosh.f64 im)
(+.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
(fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 re re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(/.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (fabs.f64 re)) (fabs.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (neg.f64 re)) (neg.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 #s(literal -1/4 binary64) re) re #s(literal 1/2 binary64))
(fma.f64 (fabs.f64 re) (*.f64 (fabs.f64 re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 #s(literal -1/4 binary64) re) #s(literal 1/2 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 re re)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 re re)) #s(literal -1/4 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 re) (*.f64 #s(literal -1/4 binary64) re)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))) (/.f64 #s(literal 1/8 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(+.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 re re)))
(*.f64 (pow.f64 re #s(literal 1 binary64)) (pow.f64 re #s(literal 1 binary64)))
(*.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)))
(*.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 re)))
(*.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)))
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 re re)
(pow.f64 (fabs.f64 re) #s(literal 2 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 re #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 re) re))
(neg.f64 (*.f64 re (neg.f64 re)))
(fabs.f64 (*.f64 re re))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 2 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 2 binary64))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (fabs.f64 re)) (fabs.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (neg.f64 re)) (neg.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re #s(literal 1/2 binary64))
(fma.f64 (fabs.f64 re) (*.f64 (fabs.f64 re) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re re) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) #s(literal 1/2 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re)) re))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))) (*.f64 re re)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 2 binary64)))) (/.f64 #s(literal 1/8 binary64) (+.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64))) (neg.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64))) (neg.f64 (+.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64)) (+.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))) (/.f64 #s(literal 1/16 binary64) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) (+.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)))) (/.f64 #s(literal 1/64 binary64) (+.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(*.f64 (cosh.f64 im) #s(literal 1 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -2 binary64))
(/.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 2 binary64)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64)))) (*.f64 (+.f64 (expm1.f64 (+.f64 im im)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))
(cosh.f64 (neg.f64 (neg.f64 im)))
(cosh.f64 (neg.f64 im))
(cosh.f64 im)
(+.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(literal 1 binary64)) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cos re) #s(literal 1 binary64))) (cosh.f64 im))
(*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (cosh.f64 im)) #s(literal 1 binary64))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) (cosh.f64 im))
(*.f64 #s(literal 1 binary64) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (cosh.f64 im)))
(*.f64 (cosh.f64 im) (*.f64 #s(literal 1 binary64) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
#s(approx (cos re) #s(literal 1 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(*.f64 re (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/2304 binary64)) re) (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal 1/110592 binary64)) re) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/2304 binary64)) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64))))
(/.f64 (*.f64 re (-.f64 (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/2304 binary64))) (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64)))
(/.f64 (*.f64 re (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal 1/110592 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/2304 binary64)) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64))))
(fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re (*.f64 #s(literal 1/48 binary64) re))
(fma.f64 #s(literal 1/48 binary64) re (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re))
(fma.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (*.f64 re #s(literal 1/48 binary64)))
(fma.f64 re #s(literal 1/48 binary64) (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))))
(+.f64 (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re) (*.f64 #s(literal 1/48 binary64) re))
(+.f64 (*.f64 #s(literal 1/48 binary64) re) (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re))
(+.f64 (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) (*.f64 re #s(literal 1/48 binary64)))
(+.f64 (*.f64 re #s(literal 1/48 binary64)) (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (fabs.f64 re)) (fabs.f64 re))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (neg.f64 re)) (neg.f64 re))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re))
(*.f64 (*.f64 re re) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)))
(*.f64 re (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/2304 binary64)) (*.f64 re re)) (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal 1/110592 binary64)) (*.f64 re re)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/2304 binary64)) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64))))

eval31.0ms (0.4%)

Memory
16.3MiB live, 60.6MiB allocated
Compiler

Compiled 6 667 to 964 computations (85.5% saved)

prune20.0ms (0.3%)

Memory
-5.1MiB live, 39.9MiB allocated
Pruning

18 alts after pruning (15 fresh and 3 done)

PrunedKeptTotal
New2286234
Fresh099
Picked325
Done011
Total23118249
Accuracy
100.0%
Counts
249 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
57.7%
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
54.7%
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
78.6%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
100.0%
(*.f64 (cosh.f64 im) (cos.f64 re))
61.3%
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
91.4%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
87.6%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
38.3%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
53.1%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
47.3%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
32.5%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
32.0%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
44.6%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
11.5%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
48.0%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
29.5%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
54.7%
(*.f64 #s(literal 1/2 binary64) (fma.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (cos.f64 re) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re))))
54.2%
#s(approx (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (-.f64 (cos.f64 re) #s(literal 0 binary64)))
Compiler

Compiled 758 to 558 computations (26.4% saved)

simplify177.0ms (2.3%)

Memory
-33.6MiB live, 136.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
cost-diff0
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
cost-diff0
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
cost-diff0
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
cost-diff0
#s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))
cost-diff0
#s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
cost-diff0
(-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))
cost-diff0
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
cost-diff0
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
cost-diff0
(fma.f64 im im #s(literal 2 binary64))
cost-diff0
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
cost-diff0
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
cost-diff0
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
cost-diff0
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
cost-diff0
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
cost-diff0
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054482
084478
1157478
2408478
31435462
45530462
08642459
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
#s(literal 1/720 binary64)
(*.f64 im im)
im
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(cos.f64 re)
re
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))
(*.f64 #s(literal 1/48 binary64) (*.f64 re re))
#s(literal 1/48 binary64)
(*.f64 re re)
re
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)))
#s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re)
(-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64))
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
#s(literal 1/2 binary64)
(*.f64 re re)
re
#s(literal 1/4 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
#s(literal -1/1440 binary64)
(*.f64 re re)
re
#s(literal 1/48 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
Outputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 (cos.f64 re) #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
#s(literal 1/720 binary64)
(*.f64 im im)
im
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(cos.f64 re)
re
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))
(-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64))
(*.f64 #s(literal 1/48 binary64) (*.f64 re re))
(*.f64 (*.f64 re re) #s(literal 1/48 binary64))
#s(literal 1/48 binary64)
(*.f64 re re)
re
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)))
#s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re)
(-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64))
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
#s(literal 1/2 binary64)
(*.f64 re re)
re
#s(literal 1/4 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
#s(literal -1/1440 binary64)
(*.f64 re re)
re
#s(literal 1/48 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)

localize226.0ms (3%)

Memory
23.7MiB live, 168.8MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.08984375
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
accuracy0.2265625
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
accuracy13.68525596923674
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy30.67269333391633
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
accuracy0.30260719816163034
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
accuracy13.68525596923674
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy14.048476563813107
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re)
accuracy30.62496679837439
#s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)))
accuracy0.03125
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
accuracy0.18359375
(*.f64 #s(literal 1/48 binary64) (*.f64 re re))
accuracy29.324458314882648
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
accuracy30.70127796241272
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
accuracy0.0
(fma.f64 im im #s(literal 2 binary64))
accuracy0.00390625
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
accuracy13.68525596923674
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy28.34528911498156
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
accuracy0.02734375
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
accuracy0.03515625
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
accuracy0.0625
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
accuracy5.498099217825054
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
Samples
180.0ms256×0valid
Compiler

Compiled 314 to 49 computations (84.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 157.0ms
ival-mult: 47.0ms (29.9% of total)
ival-sub: 42.0ms (26.7% of total)
ival-cosh: 35.0ms (22.2% of total)
const: 11.0ms (7% of total)
ival-add: 9.0ms (5.7% of total)
ival-cos: 6.0ms (3.8% of total)
ival-exp: 3.0ms (1.9% of total)
ival-div: 2.0ms (1.3% of total)
exact: 1.0ms (0.6% of total)
ival-neg: 1.0ms (0.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series53.0ms (0.7%)

Memory
-7.6MiB live, 36.4MiB allocated
Counts
27 → 74
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)))
#s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 #s(literal 1/48 binary64) (*.f64 re re))
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re)
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
Outputs
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
-1/4
(- (* 1/48 (pow re 2)) 1/4)
(- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)
(* 1/48 (pow re 2))
(/ 1/2 re)
(/ (+ 1/2 (* -1/4 (pow re 2))) re)
(/ 1/2 (pow re 2))
(* 1/48 re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (cos re))
(* 1/48 (pow re 4))
(* (pow re 4) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1/1440 (pow re 6))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* (pow re 6) (- (+ (* 1/48 (/ 1 (pow re 2))) (* 1/2 (/ 1 (pow re 6)))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/1440 (pow re 4))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/4 re)
(* re (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1/1440 (pow re 3))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -1 (* re (- 1/4 (* 1/2 (/ 1 (pow re 2))))))
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(+ 1/2 (* 1/24 (pow im 2)))
(+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
1/24
(+ 1/24 (* 1/720 (pow im 2)))
(* 1/720 (pow im 6))
(* (pow im 6) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (+ (* 1/24 (/ 1 (pow im 2))) (/ 1 (pow im 6))))))
(* 1/720 (pow im 4))
(* (pow im 4) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(+ (exp im) (exp (neg im)))
(pow im 2)
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(* 1/720 (pow im 2))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ (exp im) (exp (* -1 im)))
Calls

6 calls:

TimeVariablePointExpression
40.0ms
re
@-inf
((* (* 1 (cosh im)) (cos re)) (* 1 (cosh im)) (+ (* (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (* im im)) 1) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* im im) 2) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* 1/48 (* re re)) 1/4) (* re re)) 1/2) (- (* 1/48 (* re re)) 1/4) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* (* (- (/ 1/2 (* re re)) 1/4) re) re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (+ (* 1/720 (* im im)) 1/24) (+ (exp (neg im)) (exp im)) (* 1/48 (* re re)) (* (- (/ 1/2 (* re re)) 1/4) re) (/ 1/2 (* re re)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (* (+ (* -1/1440 (* re re)) 1/48) re) re))
3.0ms
re
@inf
((* (* 1 (cosh im)) (cos re)) (* 1 (cosh im)) (+ (* (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (* im im)) 1) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* im im) 2) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* 1/48 (* re re)) 1/4) (* re re)) 1/2) (- (* 1/48 (* re re)) 1/4) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* (* (- (/ 1/2 (* re re)) 1/4) re) re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (+ (* 1/720 (* im im)) 1/24) (+ (exp (neg im)) (exp im)) (* 1/48 (* re re)) (* (- (/ 1/2 (* re re)) 1/4) re) (/ 1/2 (* re re)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (* (+ (* -1/1440 (* re re)) 1/48) re) re))
2.0ms
im
@inf
((* (* 1 (cosh im)) (cos re)) (* 1 (cosh im)) (+ (* (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (* im im)) 1) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* im im) 2) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* 1/48 (* re re)) 1/4) (* re re)) 1/2) (- (* 1/48 (* re re)) 1/4) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* (* (- (/ 1/2 (* re re)) 1/4) re) re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (+ (* 1/720 (* im im)) 1/24) (+ (exp (neg im)) (exp im)) (* 1/48 (* re re)) (* (- (/ 1/2 (* re re)) 1/4) re) (/ 1/2 (* re re)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (* (+ (* -1/1440 (* re re)) 1/48) re) re))
2.0ms
re
@0
((* (* 1 (cosh im)) (cos re)) (* 1 (cosh im)) (+ (* (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (* im im)) 1) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* im im) 2) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* 1/48 (* re re)) 1/4) (* re re)) 1/2) (- (* 1/48 (* re re)) 1/4) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* (* (- (/ 1/2 (* re re)) 1/4) re) re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (+ (* 1/720 (* im im)) 1/24) (+ (exp (neg im)) (exp im)) (* 1/48 (* re re)) (* (- (/ 1/2 (* re re)) 1/4) re) (/ 1/2 (* re re)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (* (+ (* -1/1440 (* re re)) 1/48) re) re))
2.0ms
im
@-inf
((* (* 1 (cosh im)) (cos re)) (* 1 (cosh im)) (+ (* (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (* im im)) 1) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* im im) 2) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* 1/48 (* re re)) 1/4) (* re re)) 1/2) (- (* 1/48 (* re re)) 1/4) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* (* (- (/ 1/2 (* re re)) 1/4) re) re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (+ (* 1/720 (* im im)) 1/24) (+ (exp (neg im)) (exp im)) (* 1/48 (* re re)) (* (- (/ 1/2 (* re re)) 1/4) re) (/ 1/2 (* re re)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (* (+ (* -1/1440 (* re re)) 1/48) re) re))

simplify112.0ms (1.5%)

Memory
19.5MiB live, 160.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0188851
1671796
22247778
08720733
Stop Event
iter limit
node limit
Counts
74 → 74
Calls
Call 1
Inputs
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
-1/4
(- (* 1/48 (pow re 2)) 1/4)
(- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)
(* 1/48 (pow re 2))
(/ 1/2 re)
(/ (+ 1/2 (* -1/4 (pow re 2))) re)
(/ 1/2 (pow re 2))
(* 1/48 re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (cos re))
(* 1/48 (pow re 4))
(* (pow re 4) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1/1440 (pow re 6))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* (pow re 6) (- (+ (* 1/48 (/ 1 (pow re 2))) (* 1/2 (/ 1 (pow re 6)))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/1440 (pow re 4))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/4 re)
(* re (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1/1440 (pow re 3))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -1 (* re (- 1/4 (* 1/2 (/ 1 (pow re 2))))))
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(+ 1/2 (* 1/24 (pow im 2)))
(+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
1/24
(+ 1/24 (* 1/720 (pow im 2)))
(* 1/720 (pow im 6))
(* (pow im 6) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (+ (* 1/24 (/ 1 (pow im 2))) (/ 1 (pow im 6))))))
(* 1/720 (pow im 4))
(* (pow im 4) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(+ (exp im) (exp (neg im)))
(pow im 2)
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(* 1/720 (pow im 2))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ (exp im) (exp (* -1 im)))
Outputs
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(fma.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) re) re #s(literal -1/4 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 re re) (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(* 1/2 (+ (exp im) (exp (neg im))))
(fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(fma.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) re) re #s(literal -1/4 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 re re) (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64) (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))) (*.f64 re re) #s(literal 1/2 binary64))
-1/4
#s(literal -1/4 binary64)
(- (* 1/48 (pow re 2)) 1/4)
(-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))
(- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)
(fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64) (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)))
(* 1/48 (pow re 2))
(*.f64 #s(literal 1/48 binary64) (*.f64 re re))
(/ 1/2 re)
(/.f64 #s(literal 1/2 binary64) re)
(/ (+ 1/2 (* -1/4 (pow re 2))) re)
(/.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) re)
(/ 1/2 (pow re 2))
(/.f64 (/.f64 #s(literal 1/2 binary64) re) re)
(* 1/48 re)
(*.f64 #s(literal 1/48 binary64) re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (cos.f64 re))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/48 (pow re 4))
(*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/48 binary64))
(* (pow re 4) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (-.f64 #s(literal 1/48 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (pow.f64 re #s(literal 4 binary64)))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/48 binary64)) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (pow.f64 re #s(literal 4 binary64)))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (*.f64 (-.f64 #s(literal 1/48 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) re) re)
(* -1/4 (pow re 2))
(*.f64 (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(*.f64 (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) re) re) #s(literal 1/4 binary64)) re) re)
(* -1/1440 (pow re 6))
(*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal -1/1440 binary64))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (pow.f64 re #s(literal 6 binary64)))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 re #s(literal 6 binary64)))
(* (pow re 6) (- (+ (* 1/48 (/ 1 (pow re 2))) (* 1/2 (/ 1 (pow re 6)))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 6 binary64))) (/.f64 #s(literal -1/48 binary64) (*.f64 re re))) (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/1440 binary64))) (pow.f64 re #s(literal 6 binary64)))
(* -1/1440 (pow re 4))
(*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (pow.f64 re #s(literal 4 binary64)))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64)))
(* -1/4 re)
(*.f64 #s(literal -1/4 binary64) re)
(* re (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) re) re) #s(literal 1/4 binary64)) re)
(* -1/1440 (pow re 3))
(*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/1440 binary64))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)))
(* -1 (* re (- 1/4 (* 1/2 (/ 1 (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) (*.f64 re re)) #s(literal -1 binary64) #s(literal -1/4 binary64)) re)
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/48 binary64) (*.f64 re re)) #s(literal -1 binary64) #s(literal -1/1440 binary64)) (pow.f64 re #s(literal 3 binary64)))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (cos.f64 re)) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re)))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(+ 1/2 (* 1/24 (pow im 2)))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64))
(+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
2
#s(literal 2 binary64)
(+ 2 (pow im 2))
(fma.f64 im im #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) (fma.f64 im im #s(literal 2 binary64)))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (fma.f64 im im #s(literal 2 binary64)))
1/24
#s(literal 1/24 binary64)
(+ 1/24 (* 1/720 (pow im 2)))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(* 1/720 (pow im 6))
(*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/720 binary64))
(* (pow im 6) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 im im)) #s(literal 1/720 binary64)) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal -1/24 binary64) (*.f64 im im))) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (+ (* 1/24 (/ 1 (pow im 2))) (/ 1 (pow im 6))))))
(fma.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal -1/24 binary64) (*.f64 im im))) (pow.f64 im #s(literal 6 binary64)) #s(literal 1 binary64))
(* 1/720 (pow im 4))
(*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/720 binary64))
(* (pow im 4) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 (pow.f64 im #s(literal 4 binary64)) (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 im im)) #s(literal 1/720 binary64)))
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal -1/24 binary64) (*.f64 im im))) (pow.f64 im #s(literal 4 binary64)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(fma.f64 im im #s(literal 2 binary64))
(* 1/720 (pow im 2))
(*.f64 #s(literal 1/720 binary64) (*.f64 im im))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (cos.f64 re))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))

rewrite302.0ms (4%)

Memory
-33.9MiB live, 309.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054399
084395
1308383
22121383
09528380
Stop Event
iter limit
node limit
iter limit
Counts
27 → 308
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)))
#s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 #s(literal 1/48 binary64) (*.f64 re re))
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re)
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
Outputs
(*.f64 (cos.f64 re) #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))) #s(literal 3 binary64)) (pow.f64 (pow.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)) #s(literal -1 binary64)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))) (/.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))) (-.f64 (*.f64 (pow.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)) #s(literal -1 binary64)) (pow.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)) #s(literal -1 binary64))) (*.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))) (pow.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64))))
(/.f64 (fma.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)) (*.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)) #s(literal 1 binary64))) (*.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)) (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))))
(/.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64)))
(/.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))))
(/.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)))
(fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (neg.f64 im)) (neg.f64 im) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) (*.f64 im #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 im (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))) (/.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))))
(-.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64))) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im)) im))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))))
(+.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)))))
(+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)))) (/.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)))))
(+.f64 (pow.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)) #s(literal -1 binary64)) (/.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))))
(+.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))) (pow.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im)) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))) (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))) (-.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))))) (*.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im) #s(literal 1/2 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im) #s(literal 1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im) #s(literal 1/2 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))) (*.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))) #s(literal 1/8 binary64))) (*.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im)))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))))
(/.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (neg.f64 im)) (neg.f64 im) #s(literal 1/2 binary64))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im #s(literal 1/2 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(fma.f64 im (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) #s(literal 1/2 binary64))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im))) (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im))))
(-.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im)) im))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) (*.f64 im im)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))))
(+.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))))) (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))))))
(+.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))))) (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64)))))))
(+.f64 (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))) (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))))
(+.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) (*.f64 im #s(literal 1/2 binary64))))))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im) im))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 8 binary64) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))) (-.f64 (*.f64 (/.f64 #s(literal 8 binary64) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))) (/.f64 #s(literal 8 binary64) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))) (*.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))) (/.f64 #s(literal 8 binary64) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 4 binary64) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (-.f64 #s(literal 2 binary64) (*.f64 im im))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 im im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 im #s(literal 6 binary64))))) (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 (-.f64 (*.f64 im im) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (-.f64 (*.f64 im im) #s(literal 2 binary64)) (-.f64 (*.f64 im im) #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))) (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))) #s(literal 8 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))))
(/.f64 (-.f64 #s(literal 4 binary64) (pow.f64 im #s(literal 4 binary64))) (-.f64 #s(literal 2 binary64) (*.f64 im im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64))) (neg.f64 (-.f64 (*.f64 im im) #s(literal 2 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 im #s(literal 6 binary64)))) (neg.f64 (+.f64 #s(literal 4 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))))
(/.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 im #s(literal 6 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))))
(/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (-.f64 (*.f64 im im) #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 8 binary64) (pow.f64 im #s(literal 6 binary64))) (+.f64 #s(literal 4 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))))
(/.f64 (+.f64 #s(literal 8 binary64) (pow.f64 im #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))
(fma.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)) #s(literal 2 binary64))
(fma.f64 (neg.f64 (neg.f64 (neg.f64 im))) (neg.f64 (neg.f64 (neg.f64 im))) #s(literal 2 binary64))
(fma.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(fma.f64 (neg.f64 im) (neg.f64 im) #s(literal 2 binary64))
(fma.f64 im im #s(literal 2 binary64))
(-.f64 (/.f64 #s(literal 4 binary64) (-.f64 #s(literal 2 binary64) (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 2 binary64) (*.f64 im im))))
(-.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (*.f64 im im) #s(literal 2 binary64))) (/.f64 #s(literal 4 binary64) (-.f64 (*.f64 im im) #s(literal 2 binary64))))
(-.f64 #s(literal 2 binary64) (*.f64 (neg.f64 (neg.f64 im)) (neg.f64 im)))
(-.f64 #s(literal 2 binary64) (*.f64 (neg.f64 im) im))
(-.f64 #s(literal 2 binary64) (*.f64 im (neg.f64 im)))
(+.f64 (/.f64 #s(literal 8 binary64) (+.f64 #s(literal 4 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 #s(literal 4 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))))
(+.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 #s(literal 4 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))) (/.f64 #s(literal 8 binary64) (+.f64 #s(literal 4 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))))
(+.f64 (/.f64 #s(literal 8 binary64) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))))
(+.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))) (/.f64 #s(literal 8 binary64) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))))
(+.f64 #s(literal 2 binary64) (*.f64 im im))
(+.f64 (*.f64 im im) #s(literal 2 binary64))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (-.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))) (*.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) (*.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) #s(literal 1/8 binary64))) (*.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re)))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) (neg.f64 re)) (neg.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re #s(literal 1/2 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re re) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) #s(literal 1/2 binary64))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re))))
(-.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re)) re))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64))) (*.f64 re re)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (neg.f64 re) re) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64))))
(+.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))
(+.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))) (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))
(+.f64 (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(+.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) re) re))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64)) #s(literal 1/16 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal 1/4 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) #s(literal 1/64 binary64)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64) (fma.f64 (*.f64 re re) #s(literal 1/192 binary64) #s(literal 1/16 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal 1/4 binary64))) (*.f64 (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal 1/4 binary64)) #s(literal 1/16 binary64))) (*.f64 (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal 1/4 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal 1/4 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64) (fma.f64 (*.f64 re re) #s(literal 1/192 binary64) #s(literal 1/16 binary64)))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64) (fma.f64 (*.f64 re re) #s(literal 1/192 binary64) #s(literal 1/16 binary64))) #s(literal 1/64 binary64))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64) (fma.f64 (*.f64 re re) #s(literal 1/192 binary64) #s(literal 1/16 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64) (fma.f64 (*.f64 re re) #s(literal 1/192 binary64) #s(literal 1/16 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64)) #s(literal 1/16 binary64))) (neg.f64 (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) #s(literal 1/64 binary64))) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64) (fma.f64 (*.f64 re re) #s(literal 1/192 binary64) #s(literal 1/16 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64)) #s(literal 1/16 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal 1/4 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) #s(literal 1/64 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64) (fma.f64 (*.f64 re re) #s(literal 1/192 binary64) #s(literal 1/16 binary64))))
(-.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/16 binary64) (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal 1/4 binary64))))
(-.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64) (fma.f64 (*.f64 re re) #s(literal 1/192 binary64) #s(literal 1/16 binary64)))) (/.f64 #s(literal 1/64 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64) (fma.f64 (*.f64 re re) #s(literal 1/192 binary64) #s(literal 1/16 binary64)))))
(-.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))))
#s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)))
#s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (neg.f64 re)) (neg.f64 re))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re))
(*.f64 (*.f64 re re) (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)))
(*.f64 re (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re))
(/.f64 (neg.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/16 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/64 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (*.f64 re re)) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/16 binary64)) (*.f64 re re)) (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)))
(/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/64 binary64)) (*.f64 re re)) (+.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (*.f64 re re)) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (-.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))) (*.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) (*.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) #s(literal 1/8 binary64))) (*.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re)))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (neg.f64 re)) (neg.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re #s(literal 1/2 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re re) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) #s(literal 1/2 binary64))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re))))
(-.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re)) re))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))) (*.f64 re re)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (neg.f64 re) re) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))))
(+.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))) (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))
(+.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))
(+.f64 (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(+.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64) #s(literal 1/16 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))) (*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64)) #s(literal 1/16 binary64))) (*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) (fma.f64 (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64) #s(literal 1/16 binary64)))) (*.f64 (fma.f64 (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64) #s(literal 1/16 binary64))) #s(literal 1/64 binary64))) (*.f64 (fma.f64 (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64) #s(literal 1/16 binary64))) (fma.f64 (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64) #s(literal 1/16 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64))) (neg.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64))) (neg.f64 (fma.f64 (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64) #s(literal 1/16 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64)) (fma.f64 (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64) #s(literal 1/16 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))) (/.f64 #s(literal 1/16 binary64) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) (fma.f64 (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64) #s(literal 1/16 binary64)))) (/.f64 #s(literal 1/64 binary64) (fma.f64 (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64) #s(literal 1/16 binary64)))))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 1/13824 binary64) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))) (/.f64 (*.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))) (-.f64 (*.f64 (/.f64 #s(literal 1/13824 binary64) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))) (/.f64 #s(literal 1/13824 binary64) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))))) (*.f64 (/.f64 (*.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))) (/.f64 #s(literal 1/13824 binary64) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/576 binary64) (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/576 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64)) #s(literal 1/13824 binary64)))) (neg.f64 (neg.f64 (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 im im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64)) #s(literal 1/576 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64))))
(/.f64 (fma.f64 (*.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))) (*.f64 (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))) #s(literal 1/13824 binary64))) (*.f64 (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(/.f64 (-.f64 #s(literal 1/576 binary64) (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)))) (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/576 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64)) #s(literal 1/13824 binary64))) (neg.f64 (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64)) #s(literal 1/13824 binary64))) (neg.f64 (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/576 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64)))
(/.f64 (fma.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64)) #s(literal 1/13824 binary64)) (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))))
(/.f64 (fma.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64)) #s(literal 1/13824 binary64)) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))))
(fma.f64 (fabs.f64 (*.f64 #s(literal 1/720 binary64) (neg.f64 im))) im #s(literal 1/24 binary64))
(fma.f64 (fabs.f64 (*.f64 #s(literal 1/720 binary64) im)) im #s(literal 1/24 binary64))
(fma.f64 (*.f64 #s(literal 1/720 binary64) (neg.f64 im)) (neg.f64 im) #s(literal 1/24 binary64))
(fma.f64 (*.f64 #s(literal 1/720 binary64) im) im #s(literal 1/24 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(fma.f64 im (fabs.f64 (*.f64 (neg.f64 im) #s(literal 1/720 binary64))) #s(literal 1/24 binary64))
(fma.f64 im (fabs.f64 (*.f64 #s(literal 1/720 binary64) im)) #s(literal 1/24 binary64))
(fma.f64 im (*.f64 #s(literal 1/720 binary64) im) #s(literal 1/24 binary64))
(-.f64 (/.f64 #s(literal 1/576 binary64) (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))) (/.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))))
(-.f64 (/.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 im im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64))) (/.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 (*.f64 im im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64))))
(-.f64 #s(literal 1/24 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 1/720 binary64) im)) im))
(-.f64 #s(literal 1/24 binary64) (*.f64 (neg.f64 (*.f64 im im)) #s(literal 1/720 binary64)))
(-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (*.f64 im im)))
(+.f64 (/.f64 #s(literal 1/13824 binary64) (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))) (/.f64 (*.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64))) (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(+.f64 (/.f64 (*.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64))) (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))) (/.f64 #s(literal 1/13824 binary64) (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(+.f64 (/.f64 #s(literal 1/13824 binary64) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))) (/.f64 (*.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(+.f64 (/.f64 (*.f64 #s(literal 1/373248000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))) (/.f64 #s(literal 1/13824 binary64) (fma.f64 #s(literal 1/518400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(+.f64 (*.f64 (*.f64 im im) #s(literal 1/720 binary64)) #s(literal 1/24 binary64))
(+.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 (fabs.f64 (*.f64 #s(literal 1/48 binary64) (neg.f64 re))) re)
(*.f64 (fabs.f64 (*.f64 #s(literal 1/48 binary64) re)) re)
(*.f64 (*.f64 #s(literal 1/48 binary64) (neg.f64 re)) (neg.f64 re))
(*.f64 (*.f64 #s(literal 1/48 binary64) re) re)
(*.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal 1/48 binary64)))
(*.f64 (*.f64 re re) #s(literal 1/48 binary64))
(*.f64 #s(literal 1/48 binary64) (*.f64 re re))
(*.f64 re (fabs.f64 (*.f64 (neg.f64 re) #s(literal 1/48 binary64))))
(*.f64 re (fabs.f64 (*.f64 #s(literal 1/48 binary64) re)))
(*.f64 re (*.f64 #s(literal 1/48 binary64) re))
(sqrt.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2304 binary64)))
(fabs.f64 (neg.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64))))
(fabs.f64 (*.f64 (*.f64 re re) #s(literal 1/48 binary64)))
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re)
(*.f64 re (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/16 binary64)) re)) (neg.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/64 binary64)) re)) (neg.f64 (+.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (*.f64 re re)) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (*.f64 re (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/16 binary64)))) (neg.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (*.f64 re (-.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/64 binary64)))) (neg.f64 (+.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (*.f64 re re)) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/16 binary64)) re) (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)))
(/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/64 binary64)) re) (+.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (*.f64 re re)) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (*.f64 re (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/16 binary64))) (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)))
(/.f64 (*.f64 re (-.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/64 binary64))) (+.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (*.f64 re re)) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) (neg.f64 re))) (neg.f64 (neg.f64 re)))
(/.f64 (neg.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) re))) (neg.f64 (neg.f64 re)))
(/.f64 (fabs.f64 (/.f64 #s(literal 1/2 binary64) (neg.f64 re))) re)
(/.f64 (fabs.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) re))) re)
(/.f64 (fabs.f64 (/.f64 #s(literal 1/2 binary64) re)) re)
(/.f64 (/.f64 #s(literal 1/2 binary64) (neg.f64 re)) (neg.f64 re))
(/.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) re)) (neg.f64 re))
(/.f64 (/.f64 #s(literal 1/2 binary64) re) re)
(/.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 re) re))
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
(neg.f64 (/.f64 #s(literal -1/2 binary64) (*.f64 re re)))
(sqrt.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))))
(fabs.f64 (/.f64 #s(literal -1/2 binary64) (*.f64 re re)))
(fabs.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re))))
(fabs.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(*.f64 re (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re) #s(literal 3 binary64)) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/110592 binary64))) (fma.f64 (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re) (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re) (-.f64 (pow.f64 (*.f64 #s(literal 1/48 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re) (*.f64 #s(literal 1/48 binary64) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) #s(literal 3 binary64)) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/110592 binary64))) (fma.f64 (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) (-.f64 (pow.f64 (*.f64 #s(literal 1/48 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) (*.f64 #s(literal 1/48 binary64) re)))))
(/.f64 (fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/110592 binary64) (pow.f64 (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1/48 binary64) re) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re) (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re)) (*.f64 (*.f64 #s(literal 1/48 binary64) re) (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re)))))
(/.f64 (fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/110592 binary64) (pow.f64 (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1/48 binary64) re) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)))) (*.f64 (*.f64 #s(literal 1/48 binary64) re) (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/2304 binary64)) re)) (neg.f64 (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) re)) (neg.f64 (fma.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/2304 binary64) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64))))))
(/.f64 (neg.f64 (*.f64 re (-.f64 (*.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/2304 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64))))
(/.f64 (neg.f64 (*.f64 re (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)))) (neg.f64 (fma.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/2304 binary64) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64))))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/2304 binary64)) re) (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) re) (fma.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/2304 binary64) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64)))))
(/.f64 (*.f64 re (-.f64 (*.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/2304 binary64))) (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64)))
(/.f64 (*.f64 re (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64))) (fma.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/2304 binary64) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64)))))
(fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re (*.f64 #s(literal 1/48 binary64) re))
(fma.f64 #s(literal 1/48 binary64) re (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re))
(fma.f64 #s(literal 1/48 binary64) re (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))))
(fma.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (*.f64 #s(literal 1/48 binary64) re))
(fma.f64 re #s(literal 1/48 binary64) (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re))
(fma.f64 re #s(literal 1/48 binary64) (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))))
(+.f64 (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re) (*.f64 #s(literal 1/48 binary64) re))
(+.f64 (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) (*.f64 #s(literal 1/48 binary64) re))
(+.f64 (*.f64 #s(literal 1/48 binary64) re) (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re))
(+.f64 (*.f64 #s(literal 1/48 binary64) re) (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (neg.f64 re)) (neg.f64 re))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re))
(*.f64 (*.f64 re re) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)))
(*.f64 re (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/2304 binary64)) (*.f64 re re))) (neg.f64 (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) (*.f64 re re))) (neg.f64 (fma.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/2304 binary64) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64))))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/2304 binary64)) (*.f64 re re)) (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) (*.f64 re re)) (fma.f64 #s(literal 1/2073600 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/2304 binary64) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64)))))

eval143.0ms (1.9%)

Memory
22.4MiB live, 111.4MiB allocated
Compiler

Compiled 21 026 to 2 091 computations (90.1% saved)

prune71.0ms (0.9%)

Memory
-30.7MiB live, 73.7MiB allocated
Pruning

24 alts after pruning (19 fresh and 5 done)

PrunedKeptTotal
New43711448
Fresh2810
Picked325
Done033
Total44224466
Accuracy
100.0%
Counts
466 → 24
Alt Table
Click to see full alt table
StatusAccuracyProgram
57.7%
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
54.7%
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
78.6%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
100.0%
(*.f64 (cosh.f64 im) (cos.f64 re))
61.3%
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
91.4%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) im) im #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
87.6%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
91.3%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) (*.f64 #s(literal 1/720 binary64) (*.f64 im im))) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
38.3%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
28.9%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
47.3%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
32.5%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
32.0%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
50.5%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (fma.f64 im im #s(literal 2 binary64)))))
47.7%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) (fma.f64 im im #s(literal 2 binary64)))))
31.4%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
32.9%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
11.5%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
48.0%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
48.0%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
21.7%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
29.5%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
54.7%
(*.f64 #s(literal 1/2 binary64) (fma.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (cos.f64 re) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re))))
54.2%
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
Compiler

Compiled 1 493 to 632 computations (57.7% saved)

regimes104.0ms (1.4%)

Memory
37.8MiB live, 84.1MiB allocated
Counts
36 → 1
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
#s(approx (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (-.f64 (cos.f64 re) #s(literal 0 binary64)))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) (*.f64 #s(literal 1/720 binary64) (*.f64 im im))) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) im) im #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) (fma.f64 im im #s(literal 2 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (fma.f64 im im #s(literal 2 binary64)))))
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (fma.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (cos.f64 re) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re))))
(fma.f64 (+.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
Outputs
(*.f64 (cosh.f64 im) (cos.f64 re))
Calls

6 calls:

52.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
11.0ms
re
11.0ms
im
10.0ms
(cos.f64 re)
10.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
100.0%1(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
100.0%1(cos.f64 re)
100.0%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes99.0ms (1.3%)

Memory
-20.7MiB live, 71.8MiB allocated
Counts
31 → 3
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
#s(approx (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (-.f64 (cos.f64 re) #s(literal 0 binary64)))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) (*.f64 #s(literal 1/720 binary64) (*.f64 im im))) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) im) im #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) (fma.f64 im im #s(literal 2 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (fma.f64 im im #s(literal 2 binary64)))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
Calls

6 calls:

42.0ms
im
19.0ms
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
9.0ms
re
9.0ms
(cos.f64 re)
9.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
94.3%2re
95.1%3im
98.8%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
94.3%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
94.3%2(cos.f64 re)
91.4%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes9.0ms (0.1%)

Memory
7.7MiB live, 7.7MiB allocated
Counts
27 → 3
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
#s(approx (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (-.f64 (cos.f64 re) #s(literal 0 binary64)))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) (*.f64 #s(literal 1/720 binary64) (*.f64 im im))) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
Calls

1 calls:

7.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
98.7%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 11 to 10 computations (9.1% saved)

regimes8.0ms (0.1%)

Memory
7.0MiB live, 7.0MiB allocated
Counts
25 → 3
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
#s(approx (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (-.f64 (cos.f64 re) #s(literal 0 binary64)))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
Calls

1 calls:

7.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
98.7%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 11 to 10 computations (9.1% saved)

regimes8.0ms (0.1%)

Memory
7.1MiB live, 7.1MiB allocated
Counts
24 → 3
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
#s(approx (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (-.f64 (cos.f64 re) #s(literal 0 binary64)))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
Calls

1 calls:

7.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
98.6%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 11 to 10 computations (9.1% saved)

regimes36.0ms (0.5%)

Memory
-15.4MiB live, 37.6MiB allocated
Counts
21 → 3
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
#s(approx (+ (* (+ (cosh im) (exp im)) (* (cos re) 1/2)) (* (sinh (neg im)) (* (cos re) 1/2))) (-.f64 (cos.f64 re) #s(literal 0 binary64)))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
Calls

5 calls:

8.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
7.0ms
re
7.0ms
im
6.0ms
(cos.f64 re)
6.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
85.7%3im
76.0%2re
79.5%4(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
79.5%4(cos.f64 re)
95.0%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 19 to 22 computations (-15.8% saved)

regimes53.0ms (0.7%)

Memory
-29.0MiB live, 63.6MiB allocated
Counts
19 → 2
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
Calls

6 calls:

6.0ms
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
6.0ms
re
6.0ms
im
6.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
6.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
61.4%2re
70.8%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
70.8%2(cos.f64 re)
61.5%3im
57.7%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
70.8%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes18.0ms (0.2%)

Memory
26.7MiB live, 26.7MiB allocated
Counts
18 → 2
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
Calls

3 calls:

6.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
5.0ms
(cos.f64 re)
5.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
70.7%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
70.7%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
70.7%2(cos.f64 re)
Compiler

Compiled 17 to 18 computations (-5.9% saved)

regimes24.0ms (0.3%)

Memory
-19.9MiB live, 27.2MiB allocated
Counts
17 → 2
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
Calls

3 calls:

12.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
5.0ms
(cos.f64 re)
5.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
69.7%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
69.7%2(cos.f64 re)
69.7%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 17 to 18 computations (-5.9% saved)

regimes16.0ms (0.2%)

Memory
34.9MiB live, 34.9MiB allocated
Counts
16 → 2
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
Calls

3 calls:

5.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
5.0ms
(cos.f64 re)
5.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
66.8%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
66.8%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
66.8%2(cos.f64 re)
Compiler

Compiled 17 to 18 computations (-5.9% saved)

regimes18.0ms (0.2%)

Memory
-22.2MiB live, 25.1MiB allocated
Counts
14 → 2
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
Calls

3 calls:

8.0ms
(cos.f64 re)
4.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
4.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
65.1%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
65.1%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
65.1%2(cos.f64 re)
Compiler

Compiled 17 to 18 computations (-5.9% saved)

regimes20.0ms (0.3%)

Memory
8.1MiB live, 51.1MiB allocated
Counts
8 → 2
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/4) re) (/.f64 #s(literal 1/2 binary64) re)) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
Calls

6 calls:

5.0ms
re
3.0ms
im
3.0ms
(cos.f64 re)
3.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
3.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
52.8%2(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
52.9%2im
50.1%1re
58.3%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
58.3%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
58.3%2(cos.f64 re)
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes6.0ms (0.1%)

Memory
25.6MiB live, 25.6MiB allocated
Counts
4 → 2
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
Calls

3 calls:

2.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
2.0ms
(cos.f64 re)
2.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
53.9%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
53.9%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
53.9%2(cos.f64 re)
Compiler

Compiled 17 to 18 computations (-5.9% saved)

regimes18.0ms (0.2%)

Memory
-0.6MiB live, 40.3MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
Calls

6 calls:

9.0ms
(cos.f64 re)
2.0ms
re
2.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
2.0ms
im
2.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
48.0%1re
48.0%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
48.0%1im
48.0%1(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
48.0%1(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
48.0%1(cos.f64 re)
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes14.0ms (0.2%)

Memory
-19.0MiB live, 26.4MiB allocated
Counts
2 → 2
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
Calls

6 calls:

7.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
im
1.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
1.0ms
re
1.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
47.9%2im
47.9%2(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
32.8%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
32.8%2(cos.f64 re)
47.9%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
32.3%2re
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes7.0ms (0.1%)

Memory
20.0MiB live, 20.0MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Calls

6 calls:

1.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
im
1.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
1.0ms
re
1.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
29.5%1re
29.5%1(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
29.5%1(cos.f64 re)
29.5%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
29.5%1im
29.5%1(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 25 to 28 computations (-12% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999999997766
1.0
0.0ms
-1.1481521173417395e+183
-1.9392473145972941e+158
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999999997766
1.0
0.0ms
-1.1481521173417395e+183
-1.9392473145972941e+158
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999999997766
1.0
0.0ms
-1.9392473145972941e+158
-100755.33711423789
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999999997766
1.0
0.0ms
-1.9392473145972941e+158
-100755.33711423789
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999999997766
1.0
0.0ms
-1.9392473145972941e+158
-100755.33711423789
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.05003319719775493
0.0033217282927955395
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.05178616858147188
-0.05164214785157753
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.05003319719775493
0.0033217282927955395
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.02705426023079785
0.0033217282927955395
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch16.0ms (0.2%)

Memory
-56.6MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.02705426023079785
0.0033217282927955395
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.02705426023079785
0.0033217282927955395
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.02705426023079785
0.0033217282927955395
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000002811440056
2.0531616727185503e+46
Compiler

Compiled 14 to 15 computations (-7.1% saved)

simplify67.0ms (0.9%)

Memory
6.4MiB live, 52.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0111971
1157971
2259971
3674971
42963933
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (cosh.f64 im) (cos.f64 re))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -999999999999999946594872951565228338993526868219488856544571440313594706493755982886960025179093529324993666087115356131035228239552737388526279268078143523691759154905886843985723392 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -999999999999999946594872951565228338993526868219488856544571440313594706493755982886960025179093529324993666087115356131035228239552737388526279268078143523691759154905886843985723392 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -99999999999999995287335453651211007997446182781858083179085387749785952239205787068995699003416510776387310061494932420984963311567802202010637287727642443776 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -99999999999999995287335453651211007997446182781858083179085387749785952239205787068995699003416510776387310061494932420984963311567802202010637287727642443776 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) #s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re)) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -99999999999999995287335453651211007997446182781858083179085387749785952239205787068995699003416510776387310061494932420984963311567802202010637287727642443776 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) #s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re)) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7450755223521749/144115188075855872 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Outputs
(*.f64 (cosh.f64 im) (cos.f64 re))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -999999999999999946594872951565228338993526868219488856544571440313594706493755982886960025179093529324993666087115356131035228239552737388526279268078143523691759154905886843985723392 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -999999999999999946594872951565228338993526868219488856544571440313594706493755982886960025179093529324993666087115356131035228239552737388526279268078143523691759154905886843985723392 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -99999999999999995287335453651211007997446182781858083179085387749785952239205787068995699003416510776387310061494932420984963311567802202010637287727642443776 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -99999999999999995287335453651211007997446182781858083179085387749785952239205787068995699003416510776387310061494932420984963311567802202010637287727642443776 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) #s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re)) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -99999999999999995287335453651211007997446182781858083179085387749785952239205787068995699003416510776387310061494932420984963311567802202010637287727642443776 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) #s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re)) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -99999999999999995287335453651211007997446182781858083179085387749785952239205787068995699003416510776387310061494932420984963311567802202010637287727642443776 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251799813684745/2251799813685248 binary64)) #s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7450755223521749/144115188075855872 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7450755223521749/144115188075855872 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))

soundness1.9s (24.7%)

Memory
25.7MiB live, 788.2MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
026103
04395
115182
0101182
0162673
1576618
21952604
37441604
08035563
0119387
1439355
21768346
36979346
08096312
02681211
110241060
24355981
08361893
0188851
1671796
22247778
08720733
01028
01728
15724
240822
3474322
0828422
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
Compiler

Compiled 2 110 to 997 computations (52.7% saved)

preprocess117.0ms (1.5%)

Memory
7.2MiB live, 151.9MiB allocated
Remove

(abs re)

(abs im)

Compiler

Compiled 2 024 to 262 computations (87.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...