math.cos on complex, real part

Time bar (total: 8.3s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

Memory
0.6MiB live, 0.6MiB 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.5s (18.1%)

Memory
85.2MiB live, 1 960.8MiB allocated
Samples
1.2s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 799.0ms
ival-mult: 275.0ms (34.4% of total)
ival-cos: 222.0ms (27.8% of total)
ival-exp: 175.0ms (21.9% of total)
ival-neg: 72.0ms (9% of total)
ival-add: 39.0ms (4.9% of total)
ival-true: 7.0ms (0.9% of total)
exact: 5.0ms (0.6% of total)
ival-assert: 4.0ms (0.5% of total)
Bogosity

explain143.0ms (1.7%)

Memory
2.0MiB live, 332.2MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(exp.f64 im)
00-0-(neg.f64 im)
00-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))
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
56.0ms512×0valid
Compiler

Compiled 81 to 34 computations (58% saved)

Precisions
Click to see histograms. Total time spent on operations: 40.0ms
ival-cos: 17.0ms (43% of total)
ival-exp: 8.0ms (20.2% of total)
ival-mult: 7.0ms (17.7% of total)
ival-neg: 5.0ms (12.6% of total)
ival-add: 3.0ms (7.6% of total)
ival-true: 1.0ms (2.5% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess199.0ms (2.4%)

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

prune0.0ms (0%)

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

simplify323.0ms (3.9%)

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

localize36.0ms (0.4%)

Memory
-27.5MiB live, 64.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(exp.f64 (neg.f64 im))
accuracy0.0
(exp.f64 im)
accuracy0.0
(cos.f64 re)
accuracy0.00390625
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Samples
26.0ms256×0valid
Compiler

Compiled 35 to 12 computations (65.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-cos: 6.0ms (36.8% of total)
ival-exp: 4.0ms (24.5% of total)
ival-mult: 3.0ms (18.4% of total)
ival-add: 1.0ms (6.1% of total)
ival-neg: 1.0ms (6.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
16.2MiB live, 16.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
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
@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)))

simplify125.0ms (1.5%)

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

rewrite272.0ms (3.3%)

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

eval191.0ms (2.3%)

Memory
15.2MiB live, 115.2MiB allocated
Compiler

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

prune35.0ms (0.4%)

Memory
-16.3MiB live, 29.2MiB 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
49.6%
(/.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)))
100.0%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
75.1%
(*.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))))
50.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Compiler

Compiled 55 to 49 computations (10.9% saved)

simplify225.0ms (2.7%)

Memory
26.3MiB live, 317.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 16 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im)))
cost-diff0
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re))
cost-diff0
(/.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)))
cost-diff4
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (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
031164
050160
1110156
2285152
3944144
46119144
08543144
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
(/.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 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re))
(*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im)))
#s(literal 2 binary64)
(cosh.f64 (*.f64 #s(literal -3 binary64) im))
(*.f64 #s(literal -3 binary64) im)
#s(literal -3 binary64)
im
(cos.f64 re)
re
#s(literal 1/2 binary64)
(fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))
(cosh.f64 (*.f64 #s(literal -2 binary64) im))
(*.f64 #s(literal -2 binary64) im)
#s(literal -2 binary64)
#s(literal -1 binary64)
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 #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 #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
(/.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 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
(*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im)))
(*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(cosh.f64 (*.f64 #s(literal -3 binary64) im))
(cosh.f64 (*.f64 #s(literal 3 binary64) im))
(*.f64 #s(literal -3 binary64) im)
#s(literal -3 binary64)
im
(cos.f64 re)
re
#s(literal 1/2 binary64)
(fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))
(fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64))
(cosh.f64 (*.f64 #s(literal -2 binary64) im))
(cosh.f64 (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal -2 binary64) im)
#s(literal -2 binary64)
#s(literal -1 binary64)

localize233.0ms (2.8%)

Memory
-10.5MiB live, 365.1MiB allocated
Localize:

Found 16 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(cosh.f64 (*.f64 #s(literal -3 binary64) im))
accuracy0.0
(cos.f64 re)
accuracy0.00390625
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re))
accuracy0.2539041858302058
(/.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)))
accuracy0.0
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
accuracy0.0
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
accuracy0.0
(cos.f64 re)
accuracy0.00390625
(cosh.f64 im)
accuracy0.0
(*.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))))
accuracy0.0
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
accuracy0.0
(cos.f64 re)
accuracy0.5970031909148188
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy0.0
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
accuracy0.0
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
accuracy0.0
(cos.f64 re)
accuracy0.7431914862663085
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
Samples
142.0ms128×5exit
33.0ms128×0valid
Compiler

Compiled 155 to 32 computations (79.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 135.0ms
ival-exp: 35.0ms (26% of total)
adjust: 26.0ms (19.3% of total)
ival-cosh: 23.0ms (17.1% of total)
ival-mult: 23.0ms (17.1% of total)
ival-cos: 10.0ms (7.4% of total)
ival-add: 10.0ms (7.4% of total)
ival-div: 5.0ms (3.7% of total)
exact: 1.0ms (0.7% of total)
ival-neg: 1.0ms (0.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series31.0ms (0.4%)

Memory
23.8MiB live, 68.9MiB allocated
Counts
14 → 64
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)
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re)) #s(literal 1/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 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re))
(*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im)))
(cosh.f64 (*.f64 #s(literal -3 binary64) 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/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))
(+ (* -1/4 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (* 1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))
(+ (* 1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* 1/48 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))))))
(+ (* 1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (* 1/48 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))))))
(* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1)))
(+ (* -1/4 (/ (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))))
(+ (* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* (pow re 2) (+ (* -1/4 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* 1/48 (/ (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))))))
(+ (* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* (pow re 2) (+ (* -1/4 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* (pow re 2) (+ (* -1/1440 (/ (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* 1/48 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))))))))
(+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))
(+ (exp (* -3 im)) (+ (* -1/2 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (/ 1 (exp (* -3 im)))))
(+ (exp (* -3 im)) (+ (* (pow re 2) (+ (* -1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* 1/24 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))))) (/ 1 (exp (* -3 im)))))
(+ (exp (* -3 im)) (+ (* (pow re 2) (+ (* -1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (* 1/24 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))))) (/ 1 (exp (* -3 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/2 (* (cos re) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))
(* 1/2 (/ (* (cos re) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1)))
(* (cos re) (+ (exp (* -3 im)) (/ 1 (exp (* -3 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) (* 9/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 27/8 (* (pow im 2) (cos re))) (* 9/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 9/2 (cos re)) (* (pow im 2) (+ (* 81/80 (* (pow im 2) (cos re))) (* 27/8 (cos re)))))))
(+ (cos re) (* (pow im 2) (- (* 9/2 (cos re)) (* 4 (cos re)))))
(+ (cos re) (* (pow im 2) (- (+ (* 9/2 (cos re)) (* (pow im 2) (- (* 27/8 (cos re)) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))) (* 4 (cos re)))))
(+ (cos re) (* (pow im 2) (- (+ (* 9/2 (cos re)) (* (pow im 2) (- (+ (* 27/8 (cos re)) (* (pow im 2) (- (* 81/80 (cos re)) (+ (* 8/45 (cos re)) (+ (* 4/3 (- (* 9/2 (cos re)) (* 4 (cos re)))) (* 4 (- (* 27/8 (cos re)) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))))))) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))) (* 4 (cos re)))))
(* 2 (cos re))
(+ (* 2 (cos re)) (* 9 (* (pow im 2) (cos re))))
(+ (* 2 (cos re)) (* (pow im 2) (+ (* 27/4 (* (pow im 2) (cos re))) (* 9 (cos re)))))
(+ (* 2 (cos re)) (* (pow im 2) (+ (* 9 (cos re)) (* (pow im 2) (+ (* 81/40 (* (pow im 2) (cos re))) (* 27/4 (cos re)))))))
(+ 2 (* 9 (pow im 2)))
(+ 2 (* (pow im 2) (+ 9 (* 27/4 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 9 (* (pow im 2) (+ 27/4 (* 81/40 (pow im 2)))))))
(+ 1 (* 9/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 9/2 (* 27/8 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 9/2 (* (pow im 2) (+ 27/8 (* 81/80 (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
7.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) (* (* (* 2 (cosh (* -3 im))) (cos re)) 1/2) (/ (* (* (* 2 (cosh (* -3 im))) (cos re)) 1/2) (+ (* 2 (cosh (* -2 im))) -1)) (* (* 2 (cosh (* -3 im))) (cos re)) (* 2 (cosh (* -3 im))) (cosh (* -3 im)))
5.0ms
im
@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) (* (* (* 2 (cosh (* -3 im))) (cos re)) 1/2) (/ (* (* (* 2 (cosh (* -3 im))) (cos re)) 1/2) (+ (* 2 (cosh (* -2 im))) -1)) (* (* 2 (cosh (* -3 im))) (cos re)) (* 2 (cosh (* -3 im))) (cosh (* -3 im)))
5.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) (* (* (* 2 (cosh (* -3 im))) (cos re)) 1/2) (/ (* (* (* 2 (cosh (* -3 im))) (cos re)) 1/2) (+ (* 2 (cosh (* -2 im))) -1)) (* (* 2 (cosh (* -3 im))) (cos re)) (* 2 (cosh (* -3 im))) (cosh (* -3 im)))
5.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) (* (* (* 2 (cosh (* -3 im))) (cos re)) 1/2) (/ (* (* (* 2 (cosh (* -3 im))) (cos re)) 1/2) (+ (* 2 (cosh (* -2 im))) -1)) (* (* 2 (cosh (* -3 im))) (cos re)) (* 2 (cosh (* -3 im))) (cosh (* -3 im)))
4.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) (* (* (* 2 (cosh (* -3 im))) (cos re)) 1/2) (/ (* (* (* 2 (cosh (* -3 im))) (cos re)) 1/2) (+ (* 2 (cosh (* -2 im))) -1)) (* (* 2 (cosh (* -3 im))) (cos re)) (* 2 (cosh (* -3 im))) (cosh (* -3 im)))

simplify216.0ms (2.6%)

Memory
0.3MiB live, 278.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02831432
111211147
247231076
08948977
Stop Event
iter limit
node limit
Counts
64 → 64
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/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))
(+ (* -1/4 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (* 1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))
(+ (* 1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* 1/48 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))))))
(+ (* 1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (* 1/48 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))))))
(* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1)))
(+ (* -1/4 (/ (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))))
(+ (* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* (pow re 2) (+ (* -1/4 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* 1/48 (/ (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))))))
(+ (* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* (pow re 2) (+ (* -1/4 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* (pow re 2) (+ (* -1/1440 (/ (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* 1/48 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))))))))
(+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))
(+ (exp (* -3 im)) (+ (* -1/2 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (/ 1 (exp (* -3 im)))))
(+ (exp (* -3 im)) (+ (* (pow re 2) (+ (* -1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* 1/24 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))))) (/ 1 (exp (* -3 im)))))
(+ (exp (* -3 im)) (+ (* (pow re 2) (+ (* -1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (* 1/24 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))))) (/ 1 (exp (* -3 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/2 (* (cos re) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))
(* 1/2 (/ (* (cos re) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1)))
(* (cos re) (+ (exp (* -3 im)) (/ 1 (exp (* -3 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) (* 9/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 27/8 (* (pow im 2) (cos re))) (* 9/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 9/2 (cos re)) (* (pow im 2) (+ (* 81/80 (* (pow im 2) (cos re))) (* 27/8 (cos re)))))))
(+ (cos re) (* (pow im 2) (- (* 9/2 (cos re)) (* 4 (cos re)))))
(+ (cos re) (* (pow im 2) (- (+ (* 9/2 (cos re)) (* (pow im 2) (- (* 27/8 (cos re)) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))) (* 4 (cos re)))))
(+ (cos re) (* (pow im 2) (- (+ (* 9/2 (cos re)) (* (pow im 2) (- (+ (* 27/8 (cos re)) (* (pow im 2) (- (* 81/80 (cos re)) (+ (* 8/45 (cos re)) (+ (* 4/3 (- (* 9/2 (cos re)) (* 4 (cos re)))) (* 4 (- (* 27/8 (cos re)) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))))))) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))) (* 4 (cos re)))))
(* 2 (cos re))
(+ (* 2 (cos re)) (* 9 (* (pow im 2) (cos re))))
(+ (* 2 (cos re)) (* (pow im 2) (+ (* 27/4 (* (pow im 2) (cos re))) (* 9 (cos re)))))
(+ (* 2 (cos re)) (* (pow im 2) (+ (* 9 (cos re)) (* (pow im 2) (+ (* 81/40 (* (pow im 2) (cos re))) (* 27/4 (cos re)))))))
(+ 2 (* 9 (pow im 2)))
(+ 2 (* (pow im 2) (+ 9 (* 27/4 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 9 (* (pow im 2) (+ 27/4 (* 81/40 (pow im 2)))))))
(+ 1 (* 9/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 9/2 (* 27/8 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 9/2 (* (pow im 2) (+ 27/8 (* 81/80 (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) (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 (neg.f64 im)) (exp.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 (neg.f64 im)) (exp.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 (neg.f64 im)) (exp.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 (neg.f64 im)) (exp.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 (*.f64 #s(literal -1/2 binary64) 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 (neg.f64 im)) (exp.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 (neg.f64 im)) (exp.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 (neg.f64 im)) (exp.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 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)))))
(* 1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))
(*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (* 1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))
(*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* 1/48 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))))))
(fma.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (* 1/48 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))))))
(fma.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (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 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)))))
(* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1)))
(/.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) #s(literal 1/2 binary64)) (fma.f64 (exp.f64 im) (exp.f64 im) (expm1.f64 (*.f64 #s(literal -2 binary64) im))))
(+ (* -1/4 (/ (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))))
(/.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) (fma.f64 (exp.f64 im) (exp.f64 im) (expm1.f64 (*.f64 #s(literal -2 binary64) im))))
(+ (* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* (pow re 2) (+ (* -1/4 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* 1/48 (/ (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))))))
(/.f64 (fma.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) #s(literal 1/2 binary64))) (fma.f64 (exp.f64 im) (exp.f64 im) (expm1.f64 (*.f64 #s(literal -2 binary64) im))))
(+ (* 1/2 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* (pow re 2) (+ (* -1/4 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* (pow re 2) (+ (* -1/1440 (/ (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))) (* 1/48 (/ (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1))))))))
(fma.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (fma.f64 (exp.f64 im) (exp.f64 im) (expm1.f64 (*.f64 #s(literal -2 binary64) 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 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))) (fma.f64 (exp.f64 im) (exp.f64 im) (expm1.f64 (*.f64 #s(literal -2 binary64) im))))))
(+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))
(+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64)))
(+ (exp (* -3 im)) (+ (* -1/2 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (/ 1 (exp (* -3 im)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)) (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))))
(+ (exp (* -3 im)) (+ (* (pow re 2) (+ (* -1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* 1/24 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))))) (/ 1 (exp (* -3 im)))))
(fma.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (fma.f64 #s(literal 1/24 binary64) (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 re re) (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))))
(+ (exp (* -3 im)) (+ (* (pow re 2) (+ (* -1/2 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))) (* 1/24 (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))))) (/ 1 (exp (* -3 im)))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)) (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (*.f64 (pow.f64 re #s(literal 4 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 -1/720 binary64) (*.f64 re re) #s(literal 1/24 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)
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))))
(* 1/2 (/ (* (cos re) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im))))) (- (+ (exp (* -2 im)) (/ 1 (exp (* -2 im)))) 1)))
(/.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64)))) (fma.f64 (exp.f64 im) (exp.f64 im) (expm1.f64 (*.f64 #s(literal -2 binary64) im))))
(* (cos re) (+ (exp (* -3 im)) (/ 1 (exp (* -3 im)))))
(*.f64 (cos.f64 re) (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #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 (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) (* 9/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 #s(literal 9/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 27/8 (* (pow im 2) (cos re))) (* 9/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 27/8 binary64) (fma.f64 #s(literal 9/2 binary64) (*.f64 im im) #s(literal 1 binary64))))
(+ (cos re) (* (pow im 2) (+ (* 9/2 (cos re)) (* (pow im 2) (+ (* 81/80 (* (pow im 2) (cos re))) (* 27/8 (cos re)))))))
(fma.f64 (fma.f64 #s(literal 9/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (cos.f64 re) (fma.f64 #s(literal 81/80 binary64) (*.f64 im im) #s(literal 27/8 binary64)))))
(+ (cos re) (* (pow im 2) (- (* 9/2 (cos re)) (* 4 (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) (- (+ (* 9/2 (cos re)) (* (pow im 2) (- (* 27/8 (cos re)) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))) (* 4 (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) (- (+ (* 9/2 (cos re)) (* (pow im 2) (- (+ (* 27/8 (cos re)) (* (pow im 2) (- (* 81/80 (cos re)) (+ (* 8/45 (cos re)) (+ (* 4/3 (- (* 9/2 (cos re)) (* 4 (cos re)))) (* 4 (- (* 27/8 (cos re)) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))))))) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))) (* 4 (cos re)))))
(fma.f64 (fma.f64 (fma.f64 (fma.f64 (cos.f64 re) #s(literal 121/720 binary64) (*.f64 #s(literal -4 binary64) (*.f64 (cos.f64 re) #s(literal 1/24 binary64)))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/24 binary64))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re))
(* 2 (cos re))
(*.f64 (cos.f64 re) #s(literal 2 binary64))
(+ (* 2 (cos re)) (* 9 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 9 binary64) (*.f64 im im) #s(literal 2 binary64)))
(+ (* 2 (cos re)) (* (pow im 2) (+ (* 27/4 (* (pow im 2) (cos re))) (* 9 (cos re)))))
(fma.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 27/4 binary64) (*.f64 im im) #s(literal 9 binary64))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 2 binary64)))
(+ (* 2 (cos re)) (* (pow im 2) (+ (* 9 (cos re)) (* (pow im 2) (+ (* 81/40 (* (pow im 2) (cos re))) (* 27/4 (cos re)))))))
(fma.f64 (cos.f64 re) (fma.f64 #s(literal 9 binary64) (*.f64 im im) #s(literal 2 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (cos.f64 re) (fma.f64 #s(literal 81/40 binary64) (*.f64 im im) #s(literal 27/4 binary64)))))
(+ 2 (* 9 (pow im 2)))
(fma.f64 #s(literal 9 binary64) (*.f64 im im) #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 9 (* 27/4 (pow im 2)))))
(fma.f64 (fma.f64 #s(literal 27/4 binary64) (*.f64 im im) #s(literal 9 binary64)) (*.f64 im im) #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 9 (* (pow im 2) (+ 27/4 (* 81/40 (pow im 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 81/40 binary64) (*.f64 im im) #s(literal 27/4 binary64)) (*.f64 im im) #s(literal 9 binary64)) (*.f64 im im) #s(literal 2 binary64))
(+ 1 (* 9/2 (pow im 2)))
(fma.f64 #s(literal 9/2 binary64) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 9/2 (* 27/8 (pow im 2)))))
(fma.f64 (fma.f64 #s(literal 27/8 binary64) (*.f64 im im) #s(literal 9/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 9/2 (* (pow im 2) (+ 27/8 (* 81/80 (pow im 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 81/80 binary64) (*.f64 im im) #s(literal 27/8 binary64)) (*.f64 im im) #s(literal 9/2 binary64)) (*.f64 im im) #s(literal 1 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 (*.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))

rewrite86.0ms (1%)

Memory
-9.5MiB live, 96.8MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
031116
050112
1156100
0985100
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
14 → 133
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)
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re)) #s(literal 1/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 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) (cos.f64 re))
(*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im)))
(cosh.f64 (*.f64 #s(literal -3 binary64) 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 #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)) (*.f64 (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 (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 #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 (*.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 (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 (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 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.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(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 (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 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.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 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64))) (cos.f64 re))
(*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)))
(*.f64 #s(literal 2 binary64) (*.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)))
(*.f64 (cos.f64 re) (*.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 (*.f64 #s(literal 3 binary64) im))))
(*.f64 (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re))) (-.f64 (pow.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (-.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re))) (fma.f64 (pow.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 3 binary64)) #s(literal 8 binary64) #s(literal -1 binary64))) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -2 binary64))) (pow.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64)) #s(literal 2 binary64))))
(*.f64 (/.f64 #s(literal 1/2 binary64) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 (*.f64 #s(literal 3 binary64) im))))
(*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (/.f64 #s(literal 1/2 binary64) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64))))
(*.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64))))
(*.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (/.f64 #s(literal 1/2 binary64) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)) (/.f64 #s(literal 1/2 binary64) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64)))))
(*.f64 (cos.f64 re) (*.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) (/.f64 #s(literal 1/2 binary64) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64)))))
(*.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64))))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re))))) (neg.f64 (neg.f64 (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)))) (neg.f64 (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64))))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re))) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64)))
(neg.f64 (/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)))) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64))))
(neg.f64 (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re))) (neg.f64 (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
(*.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)) #s(literal 2 binary64))
(*.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) (cos.f64 re))
(*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (*.f64 #s(literal 2 binary64) (cos.f64 re)))
(*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)))
(*.f64 (cos.f64 re) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (cos.f64 re) (*.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (cos.f64 re)))
(fma.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)))
(fma.f64 (cos.f64 re) (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (*.f64 (cos.f64 re) (pow.f64 (exp.f64 im) #s(literal 3 binary64))))
(fma.f64 (cos.f64 re) (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)))
(+.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (cos.f64 re)) (*.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (cos.f64 re)))
(+.f64 (*.f64 (cos.f64 re) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (*.f64 (cos.f64 re) (pow.f64 (exp.f64 im) #s(literal 3 binary64))))
(+.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re)))
(*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 (/.f64 (fma.f64 #s(literal 3 binary64) im (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64))) (cosh.f64 (/.f64 (-.f64 (*.f64 #s(literal 3 binary64) im) (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 (/.f64 (fma.f64 #s(literal 3 binary64) im (*.f64 #s(literal -3 binary64) im)) #s(literal 2 binary64))) (cosh.f64 (/.f64 (-.f64 (*.f64 #s(literal 3 binary64) im) (*.f64 #s(literal -3 binary64) im)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 (/.f64 (fma.f64 #s(literal -3 binary64) im (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64))) (cosh.f64 (/.f64 (-.f64 (*.f64 #s(literal -3 binary64) im) (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 (/.f64 (fma.f64 #s(literal -3 binary64) im (*.f64 #s(literal -3 binary64) im)) #s(literal 2 binary64))) (cosh.f64 (/.f64 (-.f64 (*.f64 #s(literal -3 binary64) im) (*.f64 #s(literal -3 binary64) im)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (*.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))))
(/.f64 (+.f64 (pow.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) #s(literal 3 binary64))) (fma.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (*.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))))))
(/.f64 (-.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))) (-.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cosh.f64 (*.f64 #s(literal 3 binary64) im))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 3 binary64)) (pow.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (-.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cosh.f64 (*.f64 #s(literal 3 binary64) im))))))
(/.f64 (fma.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64))) #s(literal 2 binary64))
(/.f64 (fma.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal 3/2 binary64)) (pow.f64 (exp.f64 im) #s(literal 3/2 binary64)) (exp.f64 (neg.f64 (*.f64 #s(literal 3 binary64) im))))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal 3/2 binary64)) (pow.f64 (exp.f64 im) #s(literal 3/2 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64)))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (exp.f64 im) (exp.f64 (neg.f64 (*.f64 #s(literal 3 binary64) im))))
(fma.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -3 binary64)))
(fma.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 1 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
(fma.f64 #s(literal 2 binary64) (/.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
(fma.f64 (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (exp.f64 (neg.f64 (*.f64 #s(literal 3 binary64) im))))
(fma.f64 (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64)))
(+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (exp.f64 (neg.f64 (*.f64 #s(literal 3 binary64) im))))
(+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64)))
(+.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))
(+.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
(*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 1 binary64))
(*.f64 #s(literal 2 binary64) (/.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)))
(/.f64 (neg.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64))) #s(literal -2 binary64))
(/.f64 (*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) #s(literal 2 binary64))
(cosh.f64 (neg.f64 (*.f64 #s(literal 3 binary64) im)))
(cosh.f64 (*.f64 #s(literal 3 binary64) im))
(cosh.f64 (*.f64 #s(literal -3 binary64) im))
(+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) #s(literal 2 binary64)) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) #s(literal 2 binary64)))
(+.f64 (/.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)) (/.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64)))

eval29.0ms (0.3%)

Memory
-20.0MiB live, 71.2MiB allocated
Compiler

Compiled 5 155 to 786 computations (84.8% saved)

prune14.0ms (0.2%)

Memory
29.0MiB live, 29.0MiB allocated
Pruning

16 alts after pruning (14 fresh and 2 done)

PrunedKeptTotal
New20814222
Fresh000
Picked224
Done000
Total21016226
Accuracy
100.0%
Counts
226 → 16
Alt Table
Click to see full alt table
StatusAccuracyProgram
26.6%
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) #s(approx (cos re) #s(literal 1 binary64))) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))
61.1%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
64.9%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
75.1%
(*.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))))
50.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp 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.3%
(*.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))
48.7%
(*.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))))
35.0%
(*.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)))
50.8%
(*.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))))
36.8%
(*.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)))
47.9%
(*.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)))
46.5%
(*.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))))
27.3%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Compiler

Compiled 605 to 475 computations (21.5% saved)

simplify151.0ms (1.8%)

Memory
-11.3MiB live, 169.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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
040270
064266
1119266
2289266
3975254
44087254
08226254
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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) re)
#s(literal -1/2 binary64)
re
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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) re)
#s(literal -1/2 binary64)
re

localize165.0ms (2%)

Memory
11.5MiB live, 268.2MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
accuracy0.0
(*.f64 #s(literal -1/2 binary64) re)
accuracy0.00390625
(cosh.f64 im)
accuracy32.385694131228604
#s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
accuracy0.1796875
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
accuracy0.3036527936545421
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
accuracy31.742486701139033
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
accuracy32.25157398806962
#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 #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))))
accuracy0.0
(*.f64 re re)
accuracy15.932655988749119
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy32.38567740346803
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
accuracy0.0
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
accuracy30.004479633916514
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
accuracy31.742486701139033
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
accuracy0.0
(*.f64 (cosh.f64 im) (cos.f64 re))
accuracy0.0
(cos.f64 re)
accuracy0.00390625
(cosh.f64 im)
Samples
139.0ms256×0valid
Compiler

Compiled 195 to 38 computations (80.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 80.0ms
ival-mult: 30.0ms (37.3% of total)
ival-cos: 21.0ms (26.1% of total)
const: 12.0ms (14.9% of total)
ival-add: 7.0ms (8.7% of total)
ival-exp: 4.0ms (5% of total)
ival-cosh: 3.0ms (3.7% of total)
ival-sub: 1.0ms (1.2% of total)
exact: 1.0ms (1.2% of total)
ival-neg: 1.0ms (1.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series53.0ms (0.6%)

Memory
-4.9MiB live, 42.1MiB allocated
Counts
21 → 56
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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(*.f64 #s(literal -1/2 binary64) 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
(+ 1/48 (* -1/1440 (pow re 2)))
(* 1/48 re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(* -1/2 re)
(* 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 2))
(* (pow re 2) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -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
42.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) (* (+ (* -1/1440 (* re re)) 1/48) re) (* -1/2 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) (* (+ (* -1/1440 (* re re)) 1/48) re) (* -1/2 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) (* (+ (* -1/1440 (* re re)) 1/48) re) (* -1/2 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) (* (+ (* -1/1440 (* re re)) 1/48) re) (* -1/2 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) (* (+ (* -1/1440 (* re re)) 1/48) re) (* -1/2 re))

simplify180.0ms (2.2%)

Memory
-0.8MiB live, 186.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0164684
1580629
21951615
37429615
08023574
Stop Event
iter limit
node limit
Counts
56 → 56
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
(+ 1/48 (* -1/1440 (pow re 2)))
(* 1/48 re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(* -1/2 re)
(* 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 2))
(* (pow re 2) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -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
#s(literal 1/48 binary64)
(+ 1/48 (* -1/1440 (pow re 2)))
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 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/2 re)
(*.f64 #s(literal -1/2 binary64) 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 2))
(*.f64 #s(literal -1/1440 binary64) (*.f64 re re))
(* (pow re 2) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) re) 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 (* (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))

rewrite63.0ms (0.8%)

Memory
-0.2MiB live, 90.7MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
040218
064214
1212204
01338204
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
21 → 164
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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(*.f64 #s(literal -1/2 binary64) 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))) #s(literal 1 binary64)) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))) (cosh.f64 im))
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))) (cosh.f64 im)) #s(literal 1 binary64))
(*.f64 #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))) (cosh.f64 im))
(*.f64 #s(literal 1 binary64) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))) (cosh.f64 im)))
(*.f64 (cosh.f64 im) (*.f64 #s(literal 1 binary64) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))))
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))) #s(literal 2 binary64))
(/.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
#s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/2304 binary64) (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 2 binary64))) (-.f64 #s(literal 1/48 binary64) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 2 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 (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal 1/110592 binary64))) (neg.f64 (-.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 (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 (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal 1/110592 binary64)) (+.f64 #s(literal 1/2304 binary64) (-.f64 (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64)))))
(/.f64 (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) (fabs.f64 re)) (fabs.f64 re) #s(literal 1/48 binary64))
(fma.f64 (*.f64 #s(literal -1/1440 binary64) (neg.f64 re)) (neg.f64 re) #s(literal 1/48 binary64))
(fma.f64 (*.f64 #s(literal -1/1440 binary64) re) re #s(literal 1/48 binary64))
(fma.f64 (fabs.f64 re) (*.f64 (fabs.f64 re) #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
(fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64))
(fma.f64 re (*.f64 #s(literal -1/1440 binary64) re) #s(literal 1/48 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64))) (/.f64 #s(literal 1/2304 binary64) (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64))))
(-.f64 #s(literal 1/48 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/1440 binary64) re)) re))
(-.f64 #s(literal 1/48 binary64) (*.f64 #s(literal 1/1440 binary64) (*.f64 re re)))
(-.f64 #s(literal 1/48 binary64) (*.f64 (neg.f64 (*.f64 re re)) #s(literal -1/1440 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 3 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)))) (/.f64 #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)))))
(+.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64))
(+.f64 #s(literal 1/48 binary64) (*.f64 #s(literal -1/1440 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 (-.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 #s(literal -1/2 binary64) re)
(*.f64 re #s(literal -1/2 binary64))

eval54.0ms (0.7%)

Memory
-12.2MiB live, 84.4MiB allocated
Compiler

Compiled 7 461 to 1 121 computations (85% saved)

prune46.0ms (0.5%)

Memory
1.3MiB live, 48.3MiB allocated
Pruning

20 alts after pruning (15 fresh and 5 done)

PrunedKeptTotal
New2458253
Fresh279
Picked235
Done022
Total24920269
Accuracy
100.0%
Counts
269 → 20
Alt Table
Click to see full alt table
StatusAccuracyProgram
26.6%
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) #s(approx (cos re) #s(literal 1 binary64))) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))
57.1%
(*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
54.1%
(*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
75.1%
(*.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))))
50.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
100.0%
(*.f64 (cosh.f64 im) (cos.f64 re))
61.1%
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
64.9%
(*.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.3%
(*.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))
48.7%
(*.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))))
35.0%
(*.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)))
34.8%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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)))
36.8%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)))
50.8%
(*.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.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)))
41.2%
(*.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))))
12.1%
(*.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))))
46.5%
(*.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))))
27.3%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Compiler

Compiled 838 to 631 computations (24.7% saved)

simplify196.0ms (2.3%)

Memory
10.0MiB live, 190.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
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 (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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
cost-diff2
(*.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))))
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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
cost-diff0
(fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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
(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
058540
088532
1165532
2403532
31349520
45150520
08258510
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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re)
(*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re)
#s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64))
#s(literal 1/48 binary64)
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(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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.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(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)))
(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(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) re)
#s(literal -1/2 binary64)
re
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 #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 #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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 re re) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 re re) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re)
(*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re)
#s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64))
#s(literal 1/48 binary64)
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(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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #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))))
(*.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 (* 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(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 (* 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(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) re)
#s(literal -1/2 binary64)
re

localize275.0ms (3.3%)

Memory
-22.6MiB live, 297.7MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.0390625
(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.0859375
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
accuracy5.47322230994816
#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)))
accuracy32.385694131228604
#s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
accuracy0.6030034290868403
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
accuracy11.86214988572657
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re)
accuracy15.932655988749119
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy32.38567740346803
#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.1796875
(*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re)
accuracy31.742486701139033
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
accuracy32.25157398806962
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
accuracy33.22038933294919
#s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64))
accuracy0.0
(fma.f64 im im #s(literal 2 binary64))
accuracy0.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))))
accuracy15.932655988749119
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy30.004479633916514
#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.0390625
(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.0859375
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
accuracy5.47322230994816
#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
224.0ms256×0valid
Compiler

Compiled 327 to 49 computations (85% saved)

Precisions
Click to see histograms. Total time spent on operations: 135.0ms
ival-add: 46.0ms (34% of total)
const: 38.0ms (28% of total)
ival-mult: 27.0ms (19.9% of total)
ival-exp: 9.0ms (6.6% of total)
ival-cos: 6.0ms (4.4% of total)
ival-cosh: 3.0ms (2.2% of total)
ival-div: 2.0ms (1.5% of total)
ival-sub: 2.0ms (1.5% of total)
exact: 1.0ms (0.7% of total)
ival-neg: 1.0ms (0.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series17.0ms (0.2%)

Memory
0.0MiB live, 45.2MiB allocated
Counts
26 → 75
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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) 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(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))))
(*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #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)))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
#s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) 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))
#s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
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
(+ 1/48 (* -1/1440 (pow re 2)))
(* 1/48 re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(/ 1/2 re)
(/ (+ 1/2 (* -1/4 (pow re 2))) re)
(/ 1/2 (pow re 2))
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) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (cos re))
(* -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 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1/1440 (pow re 2))
(* (pow re 2) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -1/1440 (pow re 3))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -1/4 re)
(* re (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(cos re)
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(* -1 (* re (- 1/4 (* 1/2 (/ 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)))))))
(+ 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
5.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/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 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 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (+ (* 1/720 (* im im)) 1/24) (+ (* -1/1440 (* re re)) 1/48) (+ (exp (neg im)) (exp im)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (- (/ 1/2 (* re re)) 1/4) re) (/ 1/2 (* re re)) (cos 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/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 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 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (+ (* 1/720 (* im im)) 1/24) (+ (* -1/1440 (* re re)) 1/48) (+ (exp (neg im)) (exp im)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (- (/ 1/2 (* re re)) 1/4) re) (/ 1/2 (* re re)) (cos 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/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 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 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (+ (* 1/720 (* im im)) 1/24) (+ (* -1/1440 (* re re)) 1/48) (+ (exp (neg im)) (exp im)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (- (/ 1/2 (* re re)) 1/4) re) (/ 1/2 (* re re)) (cos 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/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 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 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (+ (* 1/720 (* im im)) 1/24) (+ (* -1/1440 (* re re)) 1/48) (+ (exp (neg im)) (exp im)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (- (/ 1/2 (* re re)) 1/4) re) (/ 1/2 (* re re)) (cos 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/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 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 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (+ (* 1/720 (* im im)) 1/24) (+ (* -1/1440 (* re re)) 1/48) (+ (exp (neg im)) (exp im)) (* (+ (* -1/1440 (* re re)) 1/48) re) (* (- (/ 1/2 (* re re)) 1/4) re) (/ 1/2 (* re re)) (cos re))

simplify172.0ms (2.1%)

Memory
-4.1MiB live, 140.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0194854
1687799
22291781
08815732
Stop Event
iter limit
node limit
Counts
75 → 75
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
(+ 1/48 (* -1/1440 (pow re 2)))
(* 1/48 re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(/ 1/2 re)
(/ (+ 1/2 (* -1/4 (pow re 2))) re)
(/ 1/2 (pow re 2))
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) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (cos re))
(* -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 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1/1440 (pow re 2))
(* (pow re 2) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -1/1440 (pow re 3))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -1/4 re)
(* re (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(cos re)
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(* -1 (* re (- 1/4 (* 1/2 (/ 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)))))))
(+ 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 (*.f64 re re) #s(literal -1/1440 binary64) #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 (*.f64 re re) #s(literal -1/1440 binary64) #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 (*.f64 re re) #s(literal 1/48 binary64)) #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 (*.f64 re re) #s(literal 1/48 binary64)) #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 (*.f64 re re) #s(literal 1/48 binary64)) #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 (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)))
1/48
#s(literal 1/48 binary64)
(+ 1/48 (* -1/1440 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64))
(* 1/48 re)
(*.f64 #s(literal 1/48 binary64) re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) 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
#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 (* (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/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/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 2))
(*.f64 (*.f64 re re) #s(literal -1/1440 binary64))
(* (pow re 2) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) re) 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/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)
(cos re)
(cos.f64 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)))
(* -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)
(+ (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))
(+ 1/2 (* 1/24 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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))

rewrite204.0ms (2.5%)

Memory
16.6MiB live, 108.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058423
088415
1305405
21992405
08902396
Stop Event
iter limit
node limit
iter limit
Counts
26 → 241
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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) 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(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))))
(*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #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)))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
#s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) 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))
#s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))
Outputs
(*.f64 (*.f64 (cos.f64 re) #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))))
(*.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))) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(*.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))
(*.f64 (*.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(literal 1 binary64))
(*.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(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)))
(*.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))) #s(literal 1 binary64))
(*.f64 #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))))
#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 (-.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 (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 (-.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 re re) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 1/2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #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 re re) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re)))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re re) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 1/2 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re))))
(-.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re)) re))
(-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (neg.f64 re) re) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))) (*.f64 re re)))
(+.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 re re) #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 re re) #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 1/4 binary64))) (*.f64 (fma.f64 (*.f64 re re) #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) #s(literal 1/16 binary64))) (*.f64 (fma.f64 (*.f64 re re) #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) (fma.f64 (*.f64 re re) #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 1/4 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) (fma.f64 (pow.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)))) (*.f64 (fma.f64 (pow.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64))) #s(literal 1/64 binary64))) (*.f64 (fma.f64 (pow.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64))) (fma.f64 (pow.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64))) (neg.f64 (fma.f64 (*.f64 re re) #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64))) (neg.f64 (fma.f64 (pow.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64)) (fma.f64 (*.f64 re re) #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64)) (fma.f64 (pow.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 re re) #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/16 binary64) (fma.f64 (*.f64 re re) #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 1/4 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) (fma.f64 (pow.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)))) (/.f64 #s(literal 1/64 binary64) (fma.f64 (pow.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)))))
(-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) 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))))
(*.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 (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(literal 1 binary64))
(*.f64 #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))))
#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 #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))) #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))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #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))))
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #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)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #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))))
(*.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))) (*.f64 #s(literal 1 binary64) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #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)))))
(*.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))) #s(literal 1 binary64))
(*.f64 #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))))
#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 #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 (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
(*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re)
(*.f64 re #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)))
#s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))

eval115.0ms (1.4%)

Memory
13.9MiB live, 111.1MiB allocated
Compiler

Compiled 22 287 to 1 908 computations (91.4% saved)

prune56.0ms (0.7%)

Memory
6.9MiB live, 50.0MiB allocated
Pruning

27 alts after pruning (20 fresh and 7 done)

PrunedKeptTotal
New43812450
Fresh2810
Picked325
Done055
Total44327470
Accuracy
100.0%
Counts
470 → 27
Alt Table
Click to see full alt table
StatusAccuracyProgram
26.6%
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) #s(approx (cos re) #s(literal 1 binary64))) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))
57.1%
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (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)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
58.9%
(*.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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
58.6%
(*.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.1%
(*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
57.1%
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh 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)) im) im #s(literal 1 binary64)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
75.1%
(*.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))))
50.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
100.0%
(*.f64 (cosh.f64 im) (cos.f64 re))
61.1%
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
64.9%
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
57.1%
(*.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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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.3%
(*.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))
48.7%
(*.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))))
35.0%
(*.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)))
34.8%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)))
50.8%
(*.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)) (fma.f64 im im #s(literal 2 binary64))))
36.8%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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)))
27.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)) #s(approx (+ (* im im) 2) (*.f64 im im))))
31.1%
(*.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)))
12.1%
(*.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))))
46.4%
(*.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))))
46.5%
(*.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))))
22.2%
(*.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))))
27.3%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
Compiler

Compiled 1 647 to 690 computations (58.1% saved)

regimes162.0ms (1.9%)

Memory
-53.4MiB live, 103.0MiB allocated
Counts
39 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)) (fma.f64 im im #s(literal 2 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh 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)) im) im #s(literal 1 binary64)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (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)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 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 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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 (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) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -3 binary64) im))) #s(approx (cos re) #s(literal 1 binary64))) #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 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.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)))
Outputs
(*.f64 (cosh.f64 im) (cos.f64 re))
Calls

6 calls:

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

Compiled 25 to 28 computations (-12% saved)

regimes53.0ms (0.6%)

Memory
40.5MiB live, 40.5MiB allocated
Counts
34 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)) (fma.f64 im im #s(literal 2 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh 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)) im) im #s(literal 1 binary64)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (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)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 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 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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 (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))
Outputs
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)))
Calls

6 calls:

10.0ms
im
10.0ms
re
9.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
8.0ms
(cos.f64 re)
8.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
91.4%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
95.6%2(cos.f64 re)
95.6%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
99.9%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
95.1%2re
97.6%3im
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes40.0ms (0.5%)

Memory
-41.7MiB live, 5.7MiB allocated
Counts
33 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)) (fma.f64 im im #s(literal 2 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh 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)) im) im #s(literal 1 binary64)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (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)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 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 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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))
Outputs
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)))
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
99.9%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)

regimes9.0ms (0.1%)

Memory
11.6MiB live, 11.6MiB allocated
Counts
32 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)) (fma.f64 im im #s(literal 2 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh 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)) im) im #s(literal 1 binary64)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (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)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 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 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
Outputs
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 (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
99.8%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
16.9MiB live, 16.9MiB allocated
Counts
30 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)) (fma.f64 im im #s(literal 2 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh 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)) im) im #s(literal 1 binary64)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (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)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 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 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
Outputs
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 (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
99.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)

regimes35.0ms (0.4%)

Memory
-30.3MiB live, 16.5MiB allocated
Counts
29 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)) (fma.f64 im im #s(literal 2 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh 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)) im) im #s(literal 1 binary64)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (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)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 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 (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 (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
Calls

1 calls:

6.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
99.4%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)

regimes51.0ms (0.6%)

Memory
37.3MiB live, 84.0MiB allocated
Counts
27 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)) (fma.f64 im im #s(literal 2 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh 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)) im) im #s(literal 1 binary64)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (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)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
Outputs
(*.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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
Calls

6 calls:

16.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
7.0ms
re
7.0ms
im
7.0ms
(cos.f64 re)
6.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
64.9%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
67.1%2re
77.0%2(cos.f64 re)
77.0%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
64.9%1im
77.0%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)

regimes45.0ms (0.5%)

Memory
-30.9MiB live, 19.9MiB allocated
Counts
26 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)) (fma.f64 im im #s(literal 2 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh 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)) im) im #s(literal 1 binary64)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (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)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
Outputs
(*.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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
Calls

3 calls:

30.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
7.0ms
(cos.f64 re)
6.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
71.2%2(cos.f64 re)
71.2%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
71.2%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)

regimes20.0ms (0.2%)

Memory
37.5MiB live, 37.5MiB allocated
Counts
25 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)) (fma.f64 im im #s(literal 2 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (cosh 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)) im) im #s(literal 1 binary64)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) #s(approx (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)))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
Outputs
(*.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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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:

6.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
6.0ms
(cos.f64 re)
6.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(cos.f64 re)
70.7%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
70.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)

regimes22.0ms (0.3%)

Memory
-3.2MiB live, 41.6MiB allocated
Counts
21 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)) (fma.f64 im im #s(literal 2 binary64))))
Outputs
(*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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:

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
70.3%2(cos.f64 re)
70.3%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
70.3%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)

regimes30.0ms (0.4%)

Memory
-17.5MiB live, 66.7MiB allocated
Counts
19 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
Outputs
(*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))
Calls

4 calls:

10.0ms
re
8.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
59.9%3re
62.7%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
68.2%3(cos.f64 re)
68.2%3(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 18 to 20 computations (-11.1% saved)

regimes38.0ms (0.5%)

Memory
-5.6MiB live, 50.9MiB 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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 (*.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)) (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)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) 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 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) (*.f64 (*.f64 re re) #s(literal -1/1440 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)) #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)))
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)) (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)) (fma.f64 im im #s(literal 2 binary64))))
Calls

5 calls:

19.0ms
im
5.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
5.0ms
(cos.f64 re)
4.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
4.0ms
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Results
AccuracySegmentsBranch
62.0%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
52.6%2(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
55.3%3im
62.0%2(cos.f64 re)
62.0%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 24 to 26 computations (-8.3% saved)

regimes14.0ms (0.2%)

Memory
24.4MiB live, 24.4MiB allocated
Counts
11 → 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 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 #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 (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #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)) #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)))
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)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 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))))
Calls

4 calls:

3.0ms
re
3.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
3.0ms
(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
53.0%3re
57.5%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
59.7%3(cos.f64 re)
59.7%3(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 18 to 20 computations (-11.1% saved)

regimes7.0ms (0.1%)

Memory
-36.1MiB live, 11.5MiB allocated
Counts
7 → 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))))
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)) (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

2 calls:

4.0ms
(cos.f64 re)
2.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
57.5%2(cos.f64 re)
57.5%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 6 to 8 computations (-33.3% saved)

regimes6.0ms (0.1%)

Memory
14.1MiB live, 14.1MiB allocated
Counts
5 → 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))))
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

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
57.5%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
57.5%2(cos.f64 re)
57.5%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 17 to 18 computations (-5.9% saved)

regimes7.0ms (0.1%)

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

4 calls:

2.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
2.0ms
im
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
46.5%1im
53.4%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
53.4%2(cos.f64 re)
53.4%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 18 to 20 computations (-11.1% saved)

regimes9.0ms (0.1%)

Memory
-28.5MiB live, 18.6MiB 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

5 calls:

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

Compiled 24 to 26 computations (-8.3% saved)

regimes8.0ms (0.1%)

Memory
20.5MiB live, 20.5MiB 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:

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

Compiled 25 to 28 computations (-12% saved)

regimes6.0ms (0.1%)

Memory
17.9MiB live, 17.9MiB 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
re
1.0ms
im
1.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
1.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
27.3%1(cos.f64 re)
27.3%1(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
27.3%1re
27.3%1im
27.3%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
27.3%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.8MiB live, 1.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999997316715
1.0
0.0ms
-inf
-0.9997327309787486
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.9999999997316715
1.0
0.0ms
-inf
-0.9997327309787486
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999997316715
1.0
0.0ms
-inf
-0.9997327309787486
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
-46.0MiB live, 1.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999997316715
1.0
0.0ms
-inf
-0.9997327309787486
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.9999999997316715
1.0
0.0ms
-inf
-0.9997327309787486
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.015048610321164155
0.08536262839104092
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.015048610321164155
0.08536262839104092
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.015048610321164155
0.08536262839104092
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.007524305160582077
0.04268131419552046
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.49989032335336864
0.4999992125257713
0.0ms
-0.007524305160582077
0.04268131419552046
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.007524305160582077
0.04268131419552046
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.49989032335336864
0.4999992125257713
0.0ms
-0.007524305160582077
0.04268131419552046
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.007524305160582077
0.04268131419552046
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.007524305160582077
0.04268131419552046
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.015048610321164155
0.08536262839104092
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000000818056352
71789.3783808501
Compiler

Compiled 14 to 15 computations (-7.1% saved)

simplify84.0ms (1%)

Memory
7.4MiB live, 54.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01341027
11881027
23011027
36961027
426031027
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 -inf.0 binary64)) (*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 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 -inf.0 binary64)) (*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 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 -inf.0 binary64)) (*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 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 -inf.0 binary64)) (*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp 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 -inf.0 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp 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 -5764607523034235/576460752303423488 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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 -5764607523034235/576460752303423488 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re 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 -5764607523034235/576460752303423488 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))) (if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal 2251349453722511/4503599627370496 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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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)) (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)))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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)))) (if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal 2251349453722511/4503599627370496 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 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))))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 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 -inf.0 binary64)) (*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 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 -inf.0 binary64)) (*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 binary64)) (*.f64 #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))) (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 -inf.0 binary64)) (*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 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 -inf.0 binary64)) (*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 binary64)) (*.f64 #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))) (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 -inf.0 binary64)) (*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 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 -inf.0 binary64)) (*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp 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 -inf.0 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp 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 -inf.0 binary64)) (*.f64 #s(approx (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 (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) 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 1125899906540513/1125899906842624 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp 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 -5764607523034235/576460752303423488 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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 -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (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 (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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 -5764607523034235/576460752303423488 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re 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 -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (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 (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))) (*.f64 #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) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re 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 -5764607523034235/576460752303423488 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))) #s(approx (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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 -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (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 (cos re) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))) (*.f64 #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 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))) (*.f64 #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 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64)))) (if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal 2251349453722511/4503599627370496 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 (*.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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))))))
(if (or (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) (not (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal 2251349453722511/4503599627370496 binary64)))) (*.f64 #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) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 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)))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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)) (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)))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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)))) (if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal 2251349453722511/4503599627370496 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) 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 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))))))
(if (or (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) (not (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal 2251349453722511/4503599627370496 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)) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/1440 (* re re)) 1/48) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 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 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 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)))

soundness2.2s (25.8%)

Memory
22.0MiB live, 1 058.7MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
058423
088415
1305405
21992405
08902396
0119387
1439355
21768346
36979346
08096312
040218
064214
1212204
01338204
01028
01728
15724
240822
3474322
0828422
0194854
1687799
22291781
08815732
0164684
1580629
21951615
37429615
08023574
02831432
111211147
247231076
08948977
031116
050112
1156100
0985100
Stop Event
fuel
iter limit
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
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
Compiler

Compiled 2 823 to 1 376 computations (51.3% saved)

preprocess100.0ms (1.2%)

Memory
-0.6MiB live, 181.6MiB allocated
Remove

(abs re)

(abs im)

Compiler

Compiled 2 096 to 306 computations (85.4% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...