math.cos on complex, real part

Time bar (total: 11.6s)

analyze0.0ms (0%)

Memory
0.8MiB live, 0.8MiB 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.2s (10.1%)

Memory
-28.4MiB live, 1 569.6MiB allocated
Samples
882.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 687.0ms
ival-cos: 330.0ms (48% of total)
ival-exp: 138.0ms (20.1% of total)
ival-mult: 122.0ms (17.7% of total)
ival-add: 50.0ms (7.3% of total)
ival-neg: 33.0ms (4.8% of total)
ival-true: 6.0ms (0.9% of total)
exact: 5.0ms (0.7% of total)
ival-assert: 3.0ms (0.4% of total)
Bogosity

preprocess64.0ms (0.6%)

Memory
24.4MiB live, 61.9MiB allocated
Algorithm
egg-herbie
Rules
204×times-frac
194×associate-*r*
174×distribute-lft-neg-in
170×cancel-sign-sub-inv
162×sub-neg
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02557
19155
225855
358755
491055
5119155
6141855
7159155
8164155
9164655
10164655
11164655
01011
01711
13411
27311
310711
412911
515611
617811
718111
818311
918811
1018811
018811
Stop Event
iter limit
saturated
iter limit
saturated
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 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
Symmetry

(abs im)

(abs re)

explain121.0ms (1%)

Memory
-5.0MiB live, 236.1MiB 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
52.0ms512×0valid
Compiler

Compiled 96 to 44 computations (54.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 31.0ms
ival-cos: 12.0ms (38.8% of total)
ival-exp: 7.0ms (22.6% of total)
ival-mult: 6.0ms (19.4% of total)
ival-add: 2.0ms (6.5% of total)
ival-neg: 2.0ms (6.5% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0%)

Memory
1.7MiB live, 1.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 13 to 10 computations (23.1% saved)

simplify13.0ms (0.1%)

Memory
-14.9MiB live, 23.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
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)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Rules
124×lower-*.f32
120×lower-*.f64
76×lower-fma.f64
76×lower-fma.f32
52×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01033
01733
13433
27333
310733
412933
515633
617833
718133
818333
918833
1018833
018833
Stop Event
iter limit
saturated
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 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.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)

localize35.0ms (0.3%)

Memory
30.8MiB live, 69.7MiB allocated
Localize:

Found 4 expressions of interest:

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

Compiled 35 to 12 computations (65.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-cos: 6.0ms (40.1% of total)
ival-exp: 3.0ms (20.1% of total)
ival-mult: 3.0ms (20.1% of total)
ival-add: 1.0ms (6.7% of total)
ival-neg: 1.0ms (6.7% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series13.0ms (0.1%)

Memory
-44.2MiB live, 6.7MiB allocated
Counts
6 → 84
Calls
Call 1
Inputs
#<alt (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))>
#<alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re))>
#<alt (cos.f64 re)>
#<alt (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))>
#<alt (exp.f64 im)>
#<alt (exp.f64 (neg.f64 im))>
Outputs
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt 1/2>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))>
#<alt (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt 1>
#<alt (+ 1 (* -1/2 (pow re 2)))>
#<alt (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))>
#<alt (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt 2>
#<alt (+ 2 (pow im 2))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt 1>
#<alt (+ 1 im)>
#<alt (+ 1 (* im (+ 1 (* 1/2 im))))>
#<alt (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt 1>
#<alt (+ 1 (* -1 im))>
#<alt (+ 1 (* im (- (* 1/2 im) 1)))>
#<alt (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))>
#<alt (exp (neg im))>
#<alt (exp (neg im))>
#<alt (exp (neg im))>
#<alt (exp (neg im))>
#<alt (exp (* -1 im))>
#<alt (exp (* -1 im))>
#<alt (exp (* -1 im))>
#<alt (exp (* -1 im))>
Calls

21 calls:

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

simplify558.0ms (4.8%)

Memory
47.0MiB live, 870.8MiB allocated
Algorithm
egg-herbie
Rules
25 308×lower-fma.f64
25 308×lower-fma.f32
5 874×lower-+.f64
5 874×lower-+.f32
3 736×lower-*.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0119655
1346623
21079613
33299596
47370596
57975596
08043556
Stop Event
iter limit
node limit
Counts
84 → 84
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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 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/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
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)))
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(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)))))))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
1
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
1
(+ 1 (* -1 im))
(+ 1 (* im (- (* 1/2 im) 1)))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(exp (neg im))
(exp (neg im))
(exp (neg im))
(exp (neg im))
(exp (* -1 im))
(exp (* -1 im))
(exp (* -1 im))
(exp (* -1 im))
Outputs
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #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))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #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)))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im (*.f64 im (*.f64 im im))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (cos.f64 re)))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #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 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(* 1/2 (cos re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(* 1/2 (cos re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(* 1/2 (cos re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(* 1/2 (cos re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(* 1/2 (cos re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(* 1/2 (cos re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(* 1/2 (cos re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/720 binary64)) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(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 im (fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/12 binary64)) im) #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
1
#s(literal 1 binary64)
(+ 1 im)
(+.f64 im #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* 1/2 im))))
(fma.f64 im (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(fma.f64 im (fma.f64 im (fma.f64 im #s(literal 1/6 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
1
#s(literal 1 binary64)
(+ 1 (* -1 im))
(-.f64 #s(literal 1 binary64) im)
(+ 1 (* im (- (* 1/2 im) 1)))
(fma.f64 im (fma.f64 #s(literal 1/2 binary64) im #s(literal -1 binary64)) #s(literal 1 binary64))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(fma.f64 im (fma.f64 im (fma.f64 im #s(literal -1/6 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)) #s(literal 1 binary64))
(exp (neg im))
(exp.f64 (neg.f64 im))
(exp (neg im))
(exp.f64 (neg.f64 im))
(exp (neg im))
(exp.f64 (neg.f64 im))
(exp (neg im))
(exp.f64 (neg.f64 im))
(exp (* -1 im))
(exp.f64 (neg.f64 im))
(exp (* -1 im))
(exp.f64 (neg.f64 im))
(exp (* -1 im))
(exp.f64 (neg.f64 im))
(exp (* -1 im))
(exp.f64 (neg.f64 im))

rewrite379.0ms (3.3%)

Memory
-5.0MiB live, 505.0MiB allocated
Algorithm
batch-egg-rewrite
Rules
5 022×lower-*.f32
5 018×lower-*.f64
4 226×lower-/.f64
4 226×lower-/.f32
3 640×lower-fma.f64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01028
01728
14724
228522
3248522
0903422
Stop Event
iter limit
node limit
iter limit
Counts
6 → 276
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))
(cos.f64 re)
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 im)
(exp.f64 (neg.f64 im))
Outputs
(+.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(+.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (exp.f64 (neg.f64 im))) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (exp.f64 im)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 im) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (exp.f64 im) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (*.f64 (cos.f64 re) (exp.f64 (neg.f64 im))) #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.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 (neg.f64 im))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)))) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64))) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1 binary64) (cosh.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)))) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64))) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1 binary64) (cosh.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))))))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)))) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))))
(/.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1 binary64) (cosh.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))
(/.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (neg.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)))) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))))))
(/.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1 binary64) (cosh.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (neg.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im)))) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(/.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(/.f64 (*.f64 (neg.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)))) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1 binary64) (cosh.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (neg.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))))))) (neg.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (neg.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))))) (neg.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im))))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) (neg.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) (neg.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(pow.f64 (/.f64 (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)))) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64))) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1 binary64) (cosh.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))))) #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))) (/.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(*.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(*.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))) (/.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (cosh.f64 im) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(*.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)))) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)))))
(*.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1 binary64) (cosh.f64 im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (/.f64 #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 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))))) (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal 2 binary64)) (cosh.f64 im))
(*.f64 (/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (pow.f64 (expm1.f64 (+.f64 im im)) #s(literal 3 binary64)))) (fma.f64 (expm1.f64 (+.f64 im im)) (-.f64 (expm1.f64 (+.f64 im im)) (exp.f64 (-.f64 (neg.f64 im) im))) (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64)))))
(*.f64 (/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (pow.f64 (expm1.f64 (+.f64 im im)) #s(literal 2 binary64)))) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (expm1.f64 (+.f64 im im))))
(*.f64 (/.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))))) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 (/.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))))) (-.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal 1 binary64)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) #s(literal 1 binary64)))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 1/2 binary64))
(cos.f64 re)
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (neg.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal -1 binary64)))
(-.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(-.f64 (/.f64 (exp.f64 (+.f64 im im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(fma.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64) (exp.f64 im))
(fma.f64 (exp.f64 (neg.f64 im)) (exp.f64 (+.f64 im im)) (exp.f64 (neg.f64 im)))
(fma.f64 (exp.f64 (neg.f64 im)) (/.f64 (exp.f64 (neg.f64 im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (neg.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(fma.f64 (exp.f64 im) #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)) (exp.f64 im))
(fma.f64 #s(literal 1 binary64) (exp.f64 im) (exp.f64 (neg.f64 im)))
(fma.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (+.f64 im im)) (exp.f64 im))
(fma.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 im) (exp.f64 im))
(fma.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (*.f64 im #s(literal 3 binary64))) (exp.f64 (neg.f64 im)))
(fma.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (neg.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(fma.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 (neg.f64 im))) (exp.f64 im))
(fma.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 (exp.f64 (neg.f64 im))) #s(literal 1 binary64)) (exp.f64 im))
(fma.f64 (exp.f64 (*.f64 im #s(literal -1/2 binary64))) (exp.f64 (*.f64 im #s(literal -1/2 binary64))) (exp.f64 im))
(fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 im))
(fma.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (neg.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(fma.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal 1 binary64)) (neg.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(fma.f64 (pow.f64 (exp.f64 (*.f64 im #s(literal -1/2 binary64))) #s(literal 1 binary64)) (pow.f64 (exp.f64 (*.f64 im #s(literal -1/2 binary64))) #s(literal 1 binary64)) (exp.f64 im))
(fma.f64 (pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(literal 1 binary64)) (pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(literal 1 binary64)) (exp.f64 im))
(neg.f64 (/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))))
(neg.f64 (/.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(neg.f64 (/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im))))))
(/.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 9 binary64))) (exp.f64 (*.f64 im #s(literal 9 binary64)))) (*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (expm1.f64 (*.f64 im #s(literal 6 binary64))))))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im))) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64)))) (*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (-.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64)))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (exp.f64 (*.f64 im #s(literal 4 binary64)))))))
(/.f64 (+.f64 #s(literal 1 binary64) (exp.f64 (+.f64 im im))) (exp.f64 im))
(/.f64 (+.f64 #s(literal 1 binary64) (exp.f64 (+.f64 im im))) (*.f64 (neg.f64 (exp.f64 im)) #s(literal -1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (exp.f64 (+.f64 im im))) (*.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im))))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (exp.f64 (*.f64 im #s(literal 4 binary64)))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))) (pow.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 2 binary64)))
(/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 9 binary64))) (exp.f64 (*.f64 im #s(literal 9 binary64)))) #s(literal 1 binary64)) (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (expm1.f64 (*.f64 im #s(literal 6 binary64)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64)))) #s(literal 1 binary64)) (*.f64 (-.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64)))) #s(literal 1 binary64)) (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (exp.f64 (*.f64 im #s(literal 4 binary64))))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (exp.f64 (*.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 9 binary64))) (exp.f64 (*.f64 im #s(literal 9 binary64))))) (neg.f64 (*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (expm1.f64 (*.f64 im #s(literal 6 binary64)))))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64))))) (neg.f64 (*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (-.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64))))) (neg.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (exp.f64 (*.f64 im #s(literal 4 binary64))))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))))) (neg.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im)))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (exp.f64 (*.f64 im #s(literal 4 binary64))))) (neg.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 3 binary64)) (pow.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) (pow.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64))) (+.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))) #s(literal 1 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))
(/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 9 binary64))) (exp.f64 (*.f64 im #s(literal 9 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (expm1.f64 (*.f64 im #s(literal 6 binary64)))))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))) (-.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (exp.f64 (*.f64 im #s(literal 4 binary64))))))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (exp.f64 (*.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im))))
(/.f64 (-.f64 (neg.f64 (exp.f64 (-.f64 (neg.f64 im) im))) (neg.f64 (exp.f64 (+.f64 im im)))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (+.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 (+.f64 im im)))) (*.f64 (neg.f64 (exp.f64 im)) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 (+.f64 im im)))) (*.f64 (exp.f64 im) #s(literal -1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (exp.f64 im))) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) #s(literal 1 binary64)))
(/.f64 (+.f64 (exp.f64 (neg.f64 im)) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) #s(literal 1 binary64))) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (exp.f64 (neg.f64 im))))
(/.f64 (+.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) (neg.f64 (exp.f64 im)))) (*.f64 (neg.f64 (neg.f64 (exp.f64 im))) #s(literal -1 binary64)))
(/.f64 (+.f64 (neg.f64 (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 (exp.f64 im) (neg.f64 (neg.f64 (exp.f64 im))) #s(literal 1 binary64)) (*.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 im)))))
(/.f64 (+.f64 (neg.f64 (exp.f64 (+.f64 im im))) #s(literal -1 binary64)) (neg.f64 (exp.f64 im)))
(/.f64 (+.f64 (neg.f64 (exp.f64 (+.f64 im im))) #s(literal -1 binary64)) (*.f64 #s(literal 1 binary64) (neg.f64 (exp.f64 im))))
(/.f64 (fma.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 im))) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (neg.f64 (neg.f64 (exp.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 (neg.f64 (exp.f64 im)) (neg.f64 (neg.f64 (exp.f64 im))) #s(literal -1 binary64)) (*.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (neg.f64 im)) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 im)) #s(literal 1 binary64))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 im)) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (neg.f64 im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (-.f64 (*.f64 (exp.f64 (neg.f64 im)) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 im)) (neg.f64 (exp.f64 (+.f64 im im))))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 im)) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im))) #s(literal 1 binary64))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im))) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im))) (exp.f64 (+.f64 im im)))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im))) (neg.f64 (exp.f64 (+.f64 im im))))) (*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))) (*.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (-.f64 (neg.f64 im) im))) #s(literal 1 binary64))) (*.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (-.f64 (neg.f64 im) im))) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (-.f64 (neg.f64 im) im))) (exp.f64 (+.f64 im im)))) (*.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (-.f64 (neg.f64 im) im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (-.f64 (neg.f64 im) im))) (neg.f64 (exp.f64 (+.f64 im im))))) (*.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (-.f64 (neg.f64 im) im))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (neg.f64 (exp.f64 (+.f64 im im))))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 (neg.f64 (exp.f64 (-.f64 (neg.f64 im) im))) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))) (*.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 1 binary64))) (*.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im)))))
(/.f64 (-.f64 (*.f64 (neg.f64 (exp.f64 (-.f64 (neg.f64 im) im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (exp.f64 (+.f64 im im)))) (*.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (-.f64 (*.f64 (neg.f64 (exp.f64 (-.f64 (neg.f64 im) im))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (neg.f64 (exp.f64 (+.f64 im im))))) (*.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (+.f64 im im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (exp.f64 (-.f64 (neg.f64 im) im)))) (pow.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal 2 binary64)))
(/.f64 (neg.f64 (-.f64 (*.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (exp.f64 (+.f64 im im))))) (neg.f64 (pow.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 9 binary64))) (exp.f64 (*.f64 im #s(literal 9 binary64)))) #s(literal 1 binary64))) (neg.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (expm1.f64 (*.f64 im #s(literal 6 binary64)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64)))) #s(literal 1 binary64))) (neg.f64 (*.f64 (-.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64)))) #s(literal 1 binary64))) (neg.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (exp.f64 (*.f64 im #s(literal 4 binary64))))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (exp.f64 (*.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64))) (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))))) (neg.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))))) (neg.f64 (neg.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im))))) (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 3 binary64)) (pow.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) (pow.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)))) (neg.f64 (+.f64 (/.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))) #s(literal 1 binary64))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 9 binary64))) (exp.f64 (*.f64 im #s(literal 9 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))) (neg.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (expm1.f64 (*.f64 im #s(literal 6 binary64))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))) (neg.f64 (-.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (neg.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (exp.f64 (*.f64 im #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (exp.f64 (*.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)))))
(pow.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im)))) #s(literal -1 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))))
(*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))))
(*.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))) (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 #s(literal 2 binary64) (cosh.f64 im))
(*.f64 (cosh.f64 im) #s(literal 2 binary64))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))))
(*.f64 (neg.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64))) (pow.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (+.f64 im im))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(*.f64 (/.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im)))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 (/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (pow.f64 (expm1.f64 (+.f64 im im)) #s(literal 3 binary64)))) (fma.f64 (expm1.f64 (+.f64 im im)) (-.f64 (expm1.f64 (+.f64 im im)) (exp.f64 (-.f64 (neg.f64 im) im))) (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64)))))
(*.f64 (/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64)))) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (pow.f64 (expm1.f64 (+.f64 im im)) #s(literal 2 binary64)))) (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (expm1.f64 (+.f64 im im))))
(*.f64 (/.f64 (-.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (+.f64 im im))) (-.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 9 binary64))) (exp.f64 (*.f64 im #s(literal 9 binary64))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (expm1.f64 (*.f64 im #s(literal 6 binary64))))))
(*.f64 (pow.f64 (/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))))
(*.f64 (pow.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 6 binary64))) (exp.f64 (*.f64 im #s(literal 6 binary64))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (exp.f64 (*.f64 im #s(literal 4 binary64)))))))
(*.f64 (pow.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 4 binary64))) (exp.f64 (*.f64 im #s(literal 4 binary64))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)))))
(exp.f64 im)
(exp.f64 (*.f64 im #s(literal 1 binary64)))
(exp.f64 (fma.f64 im #s(literal -2 binary64) (*.f64 im #s(literal 3 binary64))))
(exp.f64 (+.f64 (neg.f64 im) (+.f64 im im)))
(/.f64 (exp.f64 im) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 (neg.f64 im))))
(/.f64 (neg.f64 (exp.f64 im)) #s(literal -1 binary64))
(/.f64 (neg.f64 (neg.f64 (exp.f64 im))) #s(literal 1 binary64))
(pow.f64 (exp.f64 (neg.f64 im)) #s(literal -1 binary64))
(pow.f64 (exp.f64 im) #s(literal 1 binary64))
(pow.f64 (exp.f64 (+.f64 im im)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (neg.f64 im))
(pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (*.f64 im #s(literal 3/2 binary64)))) #s(literal 2 binary64))
(*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (+.f64 im im)))
(*.f64 (exp.f64 im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (exp.f64 im))
(*.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 (*.f64 im #s(literal 3 binary64))))
(exp.f64 (neg.f64 im))
(exp.f64 (*.f64 (neg.f64 im) #s(literal 1 binary64)))
(exp.f64 (fma.f64 im #s(literal -2 binary64) im))
(exp.f64 (fma.f64 im #s(literal -3 binary64) (+.f64 im im)))
(neg.f64 (neg.f64 (exp.f64 (neg.f64 im))))
(/.f64 #s(literal 1 binary64) (exp.f64 im))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 im))))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(/.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (neg.f64 (exp.f64 im)))))
(/.f64 (exp.f64 (log.f64 #s(literal -1 binary64))) (exp.f64 (+.f64 (log.f64 #s(literal -1 binary64)) im)))
(/.f64 (exp.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im))) (exp.f64 (/.f64 (*.f64 im (*.f64 im im)) (*.f64 im im))))
(/.f64 (exp.f64 (/.f64 #s(literal 0 binary64) im)) (exp.f64 im))
(pow.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64))
(pow.f64 (exp.f64 im) #s(literal -1 binary64))
(pow.f64 (exp.f64 (+.f64 im im)) #s(literal -1/2 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) im)
(pow.f64 (exp.f64 #s(literal -1 binary64)) (*.f64 im #s(literal 1 binary64)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (+.f64 (/.f64 im #s(literal 2 binary64)) (/.f64 im #s(literal 2 binary64))))
(pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 im #s(literal 2 binary64)))
(pow.f64 (neg.f64 (neg.f64 (exp.f64 im))) #s(literal -1 binary64))
(pow.f64 (exp.f64 (*.f64 im #s(literal -1/2 binary64))) #s(literal 2 binary64))
(pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(literal 2 binary64))
(pow.f64 (*.f64 (exp.f64 (*.f64 im #s(literal -3/2 binary64))) (exp.f64 im)) #s(literal 2 binary64))
(pow.f64 (exp.f64 (neg.f64 (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(pow.f64 (exp.f64 (neg.f64 (*.f64 im im))) (/.f64 #s(literal 1 binary64) im))
(*.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(*.f64 (exp.f64 (*.f64 im #s(literal -3 binary64))) (exp.f64 (+.f64 im im)))
(*.f64 (exp.f64 (-.f64 (neg.f64 im) im)) (exp.f64 im))
(*.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 (neg.f64 im))))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 (exp.f64 (neg.f64 im))) #s(literal 1 binary64)))
(*.f64 (exp.f64 (*.f64 im #s(literal -1/2 binary64))) (exp.f64 (*.f64 im #s(literal -1/2 binary64))))
(*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 (exp.f64 (*.f64 im #s(literal -1/2 binary64))) #s(literal 1 binary64)) (pow.f64 (exp.f64 (*.f64 im #s(literal -1/2 binary64))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(literal 1 binary64)) (pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(literal 1 binary64)))

eval39.0ms (0.3%)

Memory
7.2MiB live, 84.8MiB allocated
Compiler

Compiled 7 986 to 1 027 computations (87.1% saved)

prune44.0ms (0.4%)

Memory
15.8MiB live, 93.3MiB allocated
Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New3519360
Fresh000
Picked101
Done000
Total3529361
Accuracy
100.0%
Counts
361 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
55.1%
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))
100.0%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
92.9%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
89.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/12 binary64)) im) #s(literal 2 binary64))))
80.3%
(*.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))))
92.9%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im (*.f64 im (*.f64 im im))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
89.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
56.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
Compiler

Compiled 300 to 192 computations (36% saved)

simplify444.0ms (3.8%)

Memory
-75.1MiB live, 363.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
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-diff320
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
cost-diff0
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
cost-diff0
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
cost-diff0
(cos.f64 re)
cost-diff0
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
cost-diff0
(cos.f64 re)
cost-diff0
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
cost-diff0
(neg.f64 im)
cost-diff0
(exp.f64 (neg.f64 im))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
cost-diff13952
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
Rules
8 800×lower-fma.f32
8 788×lower-fma.f64
3 458×lower-*.f32
3 436×lower-*.f64
1 424×unsub-neg
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040257
068263
1149254
2349226
3752226
41292226
51405226
61632226
72099226
82490226
92929226
103420226
114201226
126226226
137107226
147396226
157461226
167494226
177651226
187990226
08086222
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
#s(literal 1/2 binary64)
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(cos.f64 re)
re
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 im))
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(cos.f64 re)
re
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(cos.f64 re)
re
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 im im)
im
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 im #s(literal 1/24 binary64))
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
im
(fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im)
(*.f64 im im)
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
#s(literal 1/360 binary64)
#s(literal 1/12 binary64)
#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
Outputs
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 (cos.f64 re) (cosh.f64 im))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
#s(literal 1/2 binary64)
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(cos.f64 re)
re
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 im))
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(cos.f64 re)
re
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(cos.f64 re)
re
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(*.f64 im im)
im
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 im #s(literal 1/24 binary64))
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) (*.f64 im (*.f64 im 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) (*.f64 im (*.f64 im im)) im) #s(literal 2 binary64)))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
(fma.f64 im (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) (*.f64 im (*.f64 im im)) im) #s(literal 2 binary64))
im
(fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im)
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) (*.f64 im (*.f64 im im)) im)
(*.f64 im im)
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
#s(literal 1/360 binary64)
#s(literal 1/12 binary64)
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (cos.f64 re) (cosh.f64 im))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(cosh.f64 im)
#s(literal 1 binary64)
(cosh.f64 im)
im
(cos.f64 re)
re

localize126.0ms (1.1%)

Memory
34.4MiB live, 230.1MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
accuracy100.0%
(cosh.f64 im)
accuracy100.0%
(cos.f64 re)
accuracy100.0%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
accuracy99.9%
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
accuracy99.9%
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
accuracy99.7%
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
accuracy92.9%
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
accuracy99.9%
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
accuracy99.9%
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
accuracy99.5%
(*.f64 im #s(literal 1/24 binary64))
accuracy89.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
accuracy100.0%
(cos.f64 re)
accuracy56.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
accuracy100.0%
(exp.f64 (neg.f64 im))
accuracy100.0%
(exp.f64 im)
accuracy100.0%
(cos.f64 re)
accuracy100.0%
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
Samples
77.0ms256×0valid
Compiler

Compiled 220 to 39 computations (82.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 58.0ms
ival-mult: 24.0ms (41.3% of total)
const: 11.0ms (18.9% of total)
ival-add: 7.0ms (12.1% of total)
ival-cos: 7.0ms (12.1% of total)
ival-exp: 4.0ms (6.9% of total)
ival-cosh: 3.0ms (5.2% of total)
ival-neg: 1.0ms (1.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series33.0ms (0.3%)

Memory
-17.8MiB live, 19.7MiB allocated
Counts
21 → 324
Calls
Call 1
Inputs
#<alt (fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))>
#<alt (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))>
#<alt (exp.f64 (neg.f64 im))>
#<alt (neg.f64 im)>
#<alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))>
#<alt (cos.f64 re)>
#<alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))>
#<alt (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))>
#<alt (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))>
#<alt (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))>
#<alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re))>
#<alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))>
#<alt (*.f64 #s(literal 1 binary64) (cosh.f64 im))>
#<alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))>
#<alt (cosh.f64 im)>
#<alt (exp.f64 im)>
#<alt (*.f64 im #s(literal 1/24 binary64))>
#<alt (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))>
#<alt (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))>
#<alt (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))>
#<alt (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))>
Outputs
#<alt (cos re)>
#<alt (+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))>
#<alt (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))>
#<alt (+ (* 1/2 (exp im)) (* 1/2 (exp (neg im))))>
#<alt (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (* -1/4 (exp (neg im)))))))>
#<alt (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (exp (neg im))))))))))>
#<alt (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (exp im)) (* -1/1440 (exp (neg im)))))))))))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt 1/2>
#<alt (+ 1/2 (* -1/2 im))>
#<alt (+ 1/2 (* im (- (* 1/4 im) 1/2)))>
#<alt (+ 1/2 (* im (- (* im (+ 1/4 (* -1/12 im))) 1/2)))>
#<alt (* 1/2 (exp (neg im)))>
#<alt (* 1/2 (exp (neg im)))>
#<alt (* 1/2 (exp (neg im)))>
#<alt (* 1/2 (exp (neg im)))>
#<alt (* 1/2 (exp (* -1 im)))>
#<alt (* 1/2 (exp (* -1 im)))>
#<alt (* 1/2 (exp (* -1 im)))>
#<alt (* 1/2 (exp (* -1 im)))>
#<alt 1>
#<alt (+ 1 (* -1 im))>
#<alt (+ 1 (* im (- (* 1/2 im) 1)))>
#<alt (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))>
#<alt (exp (neg im))>
#<alt (exp (neg im))>
#<alt (exp (neg im))>
#<alt (exp (neg im))>
#<alt (exp (* -1 im))>
#<alt (exp (* -1 im))>
#<alt (exp (* -1 im))>
#<alt (exp (* -1 im))>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* -1 im)>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt 1>
#<alt (+ 1 (* -1/2 (pow re 2)))>
#<alt (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))>
#<alt (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (+ 1 (+ (* -1/2 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* 1/24 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))))))>
#<alt (+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* 1/24 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (* 1/24 (* (pow im 4) (cos re)))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt (* 1/24 (* (pow im 4) (cos re)))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt 1>
#<alt (+ 1 (* 1/2 (pow im 2)))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (* 1/24 (pow im 4))>
#<alt (* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))>
#<alt (* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))>
#<alt (* 1/24 (pow im 4))>
#<alt (* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))>
#<alt (* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt 1/2>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))>
#<alt (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt 2>
#<alt (+ 2 (pow im 2))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt 1>
#<alt (+ 1 (* 1/2 (pow im 2)))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt 1>
#<alt (+ 1 (* 1/2 (pow im 2)))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt 1>
#<alt (+ 1 im)>
#<alt (+ 1 (* im (+ 1 (* 1/2 im))))>
#<alt (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt 1/2>
#<alt (+ 1/2 (* 1/24 (pow im 2)))>
#<alt (+ 1/2 (* 1/24 (pow im 2)))>
#<alt (+ 1/2 (* 1/24 (pow im 2)))>
#<alt (* 1/24 (pow im 2))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* 1/24 (pow im 2))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* 1/12 im)>
#<alt (* im (+ 1/12 (* 1/360 (pow im 2))))>
#<alt (* im (+ 1/12 (* 1/360 (pow im 2))))>
#<alt (* im (+ 1/12 (* 1/360 (pow im 2))))>
#<alt (* 1/360 (pow im 3))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* 1/360 (pow im 3))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt 1/12>
#<alt (+ 1/12 (* 1/360 (pow im 2)))>
#<alt (+ 1/12 (* 1/360 (pow im 2)))>
#<alt (+ 1/12 (* 1/360 (pow im 2)))>
#<alt (* 1/360 (pow im 2))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* 1/360 (pow im 2))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt 2>
#<alt (+ 2 (pow im 2))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))>
#<alt (* 1/360 (pow im 6))>
#<alt (* (pow im 6) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))>
#<alt (* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (+ (/ 1 (pow im 4)) (* 2 (/ 1 (pow im 6)))))))>
#<alt (* 1/360 (pow im 6))>
#<alt (* (pow im 6) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))>
#<alt (* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (+ (/ 1 (pow im 4)) (* 2 (/ 1 (pow im 6)))))))>
Calls

81 calls:

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

simplify533.0ms (4.6%)

Memory
47.0MiB live, 816.3MiB allocated
Algorithm
egg-herbie
Rules
17 830×lower-fma.f64
17 830×lower-fma.f32
4 290×lower-+.f64
4 290×lower-+.f32
4 130×lower-*.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02873407
18973145
226033062
359383005
469092997
081442798
Stop Event
iter limit
node limit
Counts
324 → 324
Calls
Call 1
Inputs
(cos re)
(+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(+ (* 1/2 (exp im)) (* 1/2 (exp (neg im))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (* -1/4 (exp (neg im)))))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (exp (neg im))))))))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (exp im)) (* -1/1440 (exp (neg im)))))))))))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
1/2
(+ 1/2 (* -1/2 im))
(+ 1/2 (* im (- (* 1/4 im) 1/2)))
(+ 1/2 (* im (- (* im (+ 1/4 (* -1/12 im))) 1/2)))
(* 1/2 (exp (neg im)))
(* 1/2 (exp (neg im)))
(* 1/2 (exp (neg im)))
(* 1/2 (exp (neg im)))
(* 1/2 (exp (* -1 im)))
(* 1/2 (exp (* -1 im)))
(* 1/2 (exp (* -1 im)))
(* 1/2 (exp (* -1 im)))
1
(+ 1 (* -1 im))
(+ 1 (* im (- (* 1/2 im) 1)))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(exp (neg im))
(exp (neg im))
(exp (neg im))
(exp (neg im))
(exp (* -1 im))
(exp (* -1 im))
(exp (* -1 im))
(exp (* -1 im))
(* -1 im)
(* -1 im)
(* -1 im)
(* -1 im)
(* -1 im)
(* -1 im)
(* -1 im)
(* -1 im)
(* -1 im)
(* -1 im)
(* -1 im)
(* -1 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 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)))
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(* 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (+ (* -1/2 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* 1/24 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))))))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* 1/24 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(* 1/24 (* (pow im 4) (cos re)))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(* 1/24 (* (pow im 4) (cos re)))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(* 1/24 (pow im 4))
(* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(* 1/24 (pow im 4))
(* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(* 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 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/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (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)))))))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 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 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
1
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
1/2
(+ 1/2 (* 1/24 (pow im 2)))
(+ 1/2 (* 1/24 (pow im 2)))
(+ 1/2 (* 1/24 (pow im 2)))
(* 1/24 (pow im 2))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* 1/24 (pow im 2))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* 1/12 im)
(* im (+ 1/12 (* 1/360 (pow im 2))))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(* 1/360 (pow im 3))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* 1/360 (pow im 3))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
1/12
(+ 1/12 (* 1/360 (pow im 2)))
(+ 1/12 (* 1/360 (pow im 2)))
(+ 1/12 (* 1/360 (pow im 2)))
(* 1/360 (pow im 2))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* 1/360 (pow im 2))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (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/360 (pow im 6))
(* (pow im 6) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (+ (/ 1 (pow im 4)) (* 2 (/ 1 (pow im 6)))))))
(* 1/360 (pow im 6))
(* (pow im 6) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (+ (/ 1 (pow im 4)) (* 2 (/ 1 (pow im 6)))))))
Outputs
(cos re)
(cos.f64 re)
(+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))
(cos.f64 re)
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (exp im)) (* 1/2 (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (* -1/4 (exp (neg im)))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (exp (neg im))))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64)))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (exp im)) (* -1/1440 (exp (neg im)))))))))))))
(fma.f64 re (*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/2 im))
(fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* im (- (* 1/4 im) 1/2)))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(+ 1/2 (* im (- (* im (+ 1/4 (* -1/12 im))) 1/2)))
(fma.f64 im (fma.f64 im (fma.f64 im #s(literal -1/12 binary64) #s(literal 1/4 binary64)) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(* 1/2 (exp (neg im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (neg im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (neg im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (neg im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (* -1 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (* -1 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (* -1 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (* -1 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
1
#s(literal 1 binary64)
(+ 1 (* -1 im))
(-.f64 #s(literal 1 binary64) im)
(+ 1 (* im (- (* 1/2 im) 1)))
(fma.f64 im (fma.f64 im #s(literal 1/2 binary64) #s(literal -1 binary64)) #s(literal 1 binary64))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(fma.f64 im (fma.f64 im (fma.f64 im #s(literal -1/6 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)) #s(literal 1 binary64))
(exp (neg im))
(exp.f64 (neg.f64 im))
(exp (neg im))
(exp.f64 (neg.f64 im))
(exp (neg im))
(exp.f64 (neg.f64 im))
(exp (neg im))
(exp.f64 (neg.f64 im))
(exp (* -1 im))
(exp.f64 (neg.f64 im))
(exp (* -1 im))
(exp.f64 (neg.f64 im))
(exp (* -1 im))
(exp.f64 (neg.f64 im))
(exp (* -1 im))
(exp.f64 (neg.f64 im))
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* -1 im)
(neg.f64 im)
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 re (*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 im (*.f64 im (*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 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 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 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 im) (exp.f64 (neg.f64 im))))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 re (*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 im (*.f64 im (*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 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 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 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 im) (exp.f64 (neg.f64 im))))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(+ 1 (+ (* -1/2 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* 1/24 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))))))
(*.f64 (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64)))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* 1/24 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))))))))
(fma.f64 (*.f64 re re) (*.f64 (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64))) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* 1/24 (* (pow im 4) (cos re)))
(*.f64 (cos.f64 re) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* 1/24 (* (pow im 4) (cos re)))
(*.f64 (cos.f64 re) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(* 1/24 (pow im 4))
(*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))
(* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(* 1/24 (pow im 4))
(*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))
(* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 re (*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 im (*.f64 im (*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 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 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 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 im) (exp.f64 (neg.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 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #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 im (fma.f64 im (*.f64 im (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 im (*.f64 im (*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(fma.f64 re (*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
1
#s(literal 1 binary64)
(+ 1 im)
(+.f64 im #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* 1/2 im))))
(fma.f64 im (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(fma.f64 im (fma.f64 im (fma.f64 im #s(literal 1/6 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
1/2
#s(literal 1/2 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 (* 1/24 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/24 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* 1/24 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* 1/24 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* 1/12 im)
(*.f64 im #s(literal 1/12 binary64))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* 1/360 (pow im 3))
(*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* 1/360 (pow im 3))
(*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
1/12
#s(literal 1/12 binary64)
(+ 1/12 (* 1/360 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(+ 1/12 (* 1/360 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(+ 1/12 (* 1/360 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* 1/360 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/360 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* 1/360 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/360 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 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 (fma.f64 im (*.f64 im (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64))
(* 1/360 (pow im 6))
(*.f64 #s(literal 1/360 binary64) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 (+.f64 #s(literal 1/360 binary64) (/.f64 #s(literal 1/12 binary64) (*.f64 im im))) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(*.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 im im))) (+.f64 #s(literal 1/360 binary64) (/.f64 #s(literal 1/12 binary64) (*.f64 im im)))))
(* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (+ (/ 1 (pow im 4)) (* 2 (/ 1 (pow im 6)))))))
(fma.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 im im))) (+.f64 #s(literal 1/360 binary64) (/.f64 #s(literal 1/12 binary64) (*.f64 im im)))) #s(literal 2 binary64))
(* 1/360 (pow im 6))
(*.f64 #s(literal 1/360 binary64) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 (+.f64 #s(literal 1/360 binary64) (/.f64 #s(literal 1/12 binary64) (*.f64 im im))) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(*.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 im im))) (+.f64 #s(literal 1/360 binary64) (/.f64 #s(literal 1/12 binary64) (*.f64 im im)))))
(* (pow im 6) (+ 1/360 (+ (* 1/12 (/ 1 (pow im 2))) (+ (/ 1 (pow im 4)) (* 2 (/ 1 (pow im 6)))))))
(fma.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 im im))) (+.f64 #s(literal 1/360 binary64) (/.f64 #s(literal 1/12 binary64) (*.f64 im im)))) #s(literal 2 binary64))

rewrite320.0ms (2.8%)

Memory
-12.3MiB live, 601.9MiB allocated
Algorithm
batch-egg-rewrite
Rules
5 052×lower-*.f32
5 030×lower-*.f64
4 310×lower-fma.f32
4 298×lower-fma.f64
4 222×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040201
068207
1239167
21637167
08088164
Stop Event
iter limit
node limit
iter limit
Counts
21 → 466
Calls
Call 1
Inputs
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(neg.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(cos.f64 re)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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)
(exp.f64 im)
(*.f64 im #s(literal 1/24 binary64))
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
Outputs
(+.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(+.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(-.f64 (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(-.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))) (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 im) (cos.f64 re)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (exp.f64 im) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 im) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 2 binary64)) (-.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))) (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))) (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 2 binary64)) (-.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im)))))
(/.f64 (*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))
(/.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 2 binary64)) (-.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))))
(/.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))) (neg.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im)))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))))
(/.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (-.f64 (*.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (*.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)))) (*.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 9 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 6 binary64)) (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 6 binary64)) (exp.f64 (fma.f64 (-.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) im) #s(literal 3 binary64) (*.f64 (+.f64 im (log.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) #s(literal 3 binary64)))))) (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 6 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))) (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 6 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 4 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 4 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 4 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (neg.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))) (neg.f64 (neg.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))))) (neg.f64 (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))))) (neg.f64 (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im)))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (neg.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) (neg.f64 (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (fma.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (*.f64 (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))))))
(pow.f64 (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im))) #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 (cos.f64 re) (cosh.f64 im))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))))
(*.f64 (*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (/.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) (cos.f64 re)) (/.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
(/.f64 #s(literal 1 binary64) (/.f64 (exp.f64 im) #s(literal 1/2 binary64)))
(/.f64 #s(literal -1/2 binary64) (neg.f64 (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(*.f64 (exp.f64 (neg.f64 im)) #s(literal 1/2 binary64))
(exp.f64 (neg.f64 im))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal -1 binary64))) im))
(/.f64 #s(literal 1 binary64) (exp.f64 im))
(/.f64 #s(literal 1 binary64) (/.f64 (exp.f64 im) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 im))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (exp.f64 im) #s(literal 1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (exp.f64 im) #s(literal 1 binary64))))
(pow.f64 (exp.f64 im) #s(literal -1 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) im)
(pow.f64 (/.f64 (exp.f64 im) #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(log.f64 (exp.f64 (neg.f64 im)))
(+.f64 #s(literal 0 binary64) (neg.f64 im))
(-.f64 #s(literal 0 binary64) im)
(-.f64 #s(literal 0 binary64) (log.f64 (/.f64 (exp.f64 im) #s(literal 1 binary64))))
(-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (neg.f64 (exp.f64 im))))
(-.f64 (/.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im)))) (/.f64 (*.f64 im (*.f64 im im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im)))))
(-.f64 (/.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) im)) (/.f64 (*.f64 im im) (+.f64 #s(literal 0 binary64) im)))
(neg.f64 im)
(neg.f64 (log.f64 (/.f64 (exp.f64 im) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im im)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im im))) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im im)))) (neg.f64 (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im)))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im))) (neg.f64 (+.f64 #s(literal 0 binary64) im)))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 (neg.f64 im) (neg.f64 im)) (*.f64 #s(literal 0 binary64) (neg.f64 im)))))
(*.f64 im #s(literal -1 binary64))
(*.f64 im (log.f64 (exp.f64 #s(literal -1 binary64))))
(*.f64 #s(literal -1 binary64) im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(cos.f64 re)
(*.f64 (cos.f64 re) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(+.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))
(+.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (cos.f64 re))
(-.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 2 binary64)) (-.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (cos.f64 re))) (/.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (-.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (cos.f64 re))))
(fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (cos.f64 re)) (cos.f64 re))
(fma.f64 (cos.f64 re) #s(literal 1 binary64) (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))
(fma.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (cos.f64 re))
(fma.f64 (*.f64 im im) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (cos.f64 re)) (cos.f64 re))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (cos.f64 re)) (cos.f64 re))
(fma.f64 #s(literal 1 binary64) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))
(fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (cos.f64 re) (cos.f64 re))
(fma.f64 (*.f64 (cos.f64 re) im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (cos.f64 re))
(fma.f64 (*.f64 (cos.f64 re) (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (cos.f64 re))
(fma.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 2 binary64)) (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (cos.f64 re)))) (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 3 binary64)) (pow.f64 (cos.f64 re) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (cos.f64 re)) (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)) (*.f64 (cos.f64 re) (fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (*.f64 (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64)) (cos.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)) (*.f64 (fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal -1 binary64)) (cos.f64 re))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 3 binary64)) (pow.f64 (cos.f64 re) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 2 binary64)) (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (cos.f64 re)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))) (-.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (cos.f64 re)))
(/.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64))) (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))
(/.f64 (*.f64 (cos.f64 re) (fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal -1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64)) (cos.f64 re)) (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))
(/.f64 (*.f64 (fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal -1 binary64)) (cos.f64 re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 3 binary64)) (pow.f64 (cos.f64 re) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 2 binary64)) (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (cos.f64 re))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))))) (neg.f64 (-.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (cos.f64 re))))
(/.f64 (neg.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64)))) (neg.f64 (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (*.f64 (cos.f64 re) (fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal -1 binary64)))) (neg.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64)) (cos.f64 re))) (neg.f64 (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal -1 binary64)) (cos.f64 re))) (neg.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))))
(/.f64 (+.f64 (pow.f64 (cos.f64 re) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 3 binary64))) (+.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (cos.f64 re))
(+.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(literal 1 binary64))
(+.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 im im)))
(-.f64 (/.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (/.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 im (*.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im im)) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im (*.f64 im im)) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 im (*.f64 im im)) (*.f64 im #s(literal 1/24 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) im #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/24 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) im) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64)) (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal -1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64))) (neg.f64 (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))))
(/.f64 (neg.f64 (fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal -1 binary64))) (neg.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))) (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(literal 9 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(literal 6 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))))) (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(literal 6 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))) #s(literal 1 binary64)) (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(literal 6 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (+.f64 #s(literal 1 binary64) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64))) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (*.f64 im im))) (pow.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))))))
(/.f64 (+.f64 (pow.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))) #s(literal 3 binary64)) (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (*.f64 im im))))) (fma.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) (*.f64 #s(literal 1/2 binary64) (*.f64 im im))) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))) (/.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))) (fma.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))) (*.f64 (/.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64)))))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(*.f64 (fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal -1 binary64))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 (*.f64 (cos.f64 re) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
(-.f64 (/.f64 (/.f64 (exp.f64 (neg.f64 (+.f64 im im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) (/.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)))
(-.f64 (/.f64 (exp.f64 (neg.f64 (+.f64 im im))) (*.f64 #s(literal 2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (/.f64 (exp.f64 (+.f64 im im)) (*.f64 #s(literal 2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(cosh.f64 im)
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (cosh.f64 im)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im)))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64))))
(/.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (*.f64 #s(literal 2 binary64) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (cosh.f64 im))))
(/.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (*.f64 #s(literal 2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (neg.f64 (*.f64 #s(literal 2 binary64) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im)))) (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64))) #s(literal -2 binary64))
(pow.f64 (/.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(literal -1 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(*.f64 (cosh.f64 im) #s(literal 1 binary64))
(*.f64 (cosh.f64 im) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (/.f64 (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))) #s(literal 2 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im)))))
(+.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(+.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(-.f64 (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(-.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))) (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 im) (cos.f64 re)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (exp.f64 im) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 im) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(fma.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 2 binary64)) (-.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))) (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))) (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 2 binary64)) (-.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im)))))
(/.f64 (*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))
(/.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 2 binary64)) (-.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))))
(/.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))) (neg.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im)))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))))
(/.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (-.f64 (*.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (*.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)))) (*.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 9 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 6 binary64)) (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 6 binary64)) (exp.f64 (fma.f64 (-.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) im) #s(literal 3 binary64) (*.f64 (+.f64 im (log.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) #s(literal 3 binary64)))))) (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 6 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))) (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 6 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 4 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 4 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 4 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (neg.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))) (neg.f64 (neg.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))))) (neg.f64 (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))))) (neg.f64 (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im)))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (neg.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) (neg.f64 (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (fma.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (*.f64 (/.f64 (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im)))) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))))))
(pow.f64 (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im))) #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 (cos.f64 re) (cosh.f64 im))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (cosh.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 #s(literal 1/4 binary64) (exp.f64 (+.f64 im im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))))))))
(*.f64 (*.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (/.f64 (*.f64 (cos.f64 re) (cosh.f64 im)) (cos.f64 re)) (/.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (-.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))
(-.f64 (/.f64 (/.f64 (exp.f64 (neg.f64 (+.f64 im im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) (/.f64 (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)))
(-.f64 (/.f64 (exp.f64 (neg.f64 (+.f64 im im))) (*.f64 #s(literal 2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (/.f64 (exp.f64 (+.f64 im im)) (*.f64 #s(literal 2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(cosh.f64 im)
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (cosh.f64 im)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im)))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64))))
(/.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (*.f64 #s(literal 2 binary64) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (cosh.f64 im))))
(/.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (*.f64 #s(literal 2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (neg.f64 (*.f64 #s(literal 2 binary64) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im)))) (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1 binary64))) #s(literal -2 binary64))
(pow.f64 (/.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(literal -1 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(*.f64 (cosh.f64 im) #s(literal 1 binary64))
(*.f64 (cosh.f64 im) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (/.f64 (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im))) #s(literal 2 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (+.f64 (exp.f64 (neg.f64 (+.f64 im im))) (expm1.f64 (+.f64 im im)))))
(exp.f64 im)
(*.f64 im #s(literal 1/24 binary64))
(*.f64 #s(literal 1/24 binary64) im)
(+.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))) (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 (*.f64 im #s(literal 1/24 binary64)) im #s(literal 1/2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal -1/4 binary64))) (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)))) #s(literal 1/512 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64))) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal 1/110592 binary64)))) (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)))) #s(literal 1/64 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64))) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)))) #s(literal 1/64 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (+.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) #s(literal 1/4 binary64)))) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64))) #s(literal 1/16 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal -1/4 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (*.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))))
(*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))
(+.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))
(+.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))) (/.f64 (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))) (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))))
(fma.f64 im #s(literal 1/12 binary64) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im im) (*.f64 im #s(literal 1/360 binary64)) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 #s(literal 1/360 binary64) (*.f64 im (*.f64 im im)) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 #s(literal 1/12 binary64) im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) im (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im #s(literal 1/360 binary64)) (*.f64 im im) (*.f64 im #s(literal 1/12 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (-.f64 (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))) (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64))))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/1728 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64))) (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))) (*.f64 im (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)) (*.f64 im (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))) (*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im)))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/1728 binary64))) (fma.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (-.f64 (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))) (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64)))) (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64))))
(/.f64 (*.f64 im (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64))) (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))
(/.f64 (*.f64 im (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal -1/144 binary64))) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) im) (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/1728 binary64)))) (neg.f64 (fma.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (-.f64 (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))) (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))))) (neg.f64 (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)))) (neg.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)))) (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) im)) (neg.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im)) (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/1728 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))))) (fma.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64)) (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))))))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
(*.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)) im)
(+.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) (/.f64 #s(literal 1/144 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(-.f64 (/.f64 #s(literal 1/144 binary64) (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64))
(fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 1/144 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (-.f64 #s(literal 1/144 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) (+.f64 #s(literal 1/144 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64))) (neg.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64))) (neg.f64 (+.f64 #s(literal 1/144 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal -1/144 binary64))) (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (-.f64 #s(literal 1/144 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64))) (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)) #s(literal 1/144 binary64))) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) #s(literal 1/5159780352 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) (-.f64 #s(literal 1/2985984 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal 1/80621568000 binary64)))) (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) #s(literal 1/2985984 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) #s(literal 1/1728 binary64)) (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) #s(literal 1/2985984 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (+.f64 #s(literal 1/20736 binary64) (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) #s(literal 1/144 binary64)))) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64))) #s(literal 1/20736 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)))) (neg.f64 (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/144 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)))) (neg.f64 (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 1/144 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) (fma.f64 (/.f64 #s(literal 1/144 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) (/.f64 #s(literal 1/144 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) (*.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) (/.f64 #s(literal 1/144 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(+.f64 #s(literal 2 binary64) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))
(+.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 2 binary64))
(+.f64 (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) (*.f64 im (*.f64 im im))) (fma.f64 im im #s(literal 2 binary64)))
(+.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) (*.f64 im (*.f64 im im)))) (*.f64 im im))
(-.f64 (/.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))) (/.f64 #s(literal 4 binary64) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))))
(-.f64 (/.f64 #s(literal 4 binary64) (-.f64 #s(literal 2 binary64) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (/.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (-.f64 #s(literal 2 binary64) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
(fma.f64 im (*.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 (*.f64 im im) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) (*.f64 im (*.f64 im im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) im #s(literal 2 binary64))
(fma.f64 (*.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) im (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 (*.f64 im (*.f64 im im)) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) (*.f64 im im) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)) (fma.f64 im im #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 4 binary64) (-.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im #s(literal 2 binary64))))) (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) #s(literal 8 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 2 binary64) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im))) (-.f64 #s(literal 4 binary64) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))))))
(/.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) #s(literal 8 binary64)) (-.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 4 binary64)) (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im #s(literal 2 binary64)))))
(/.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) #s(literal 8 binary64)) (+.f64 #s(literal 4 binary64) (-.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im #s(literal 2 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im))) #s(literal -4 binary64)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) #s(literal 8 binary64))) (neg.f64 (-.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 4 binary64)) (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im #s(literal 2 binary64))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) #s(literal 8 binary64))) (neg.f64 (+.f64 #s(literal 4 binary64) (-.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im))) #s(literal -4 binary64))) (neg.f64 (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))))
(/.f64 (-.f64 #s(literal 4 binary64) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im))))) (-.f64 #s(literal 2 binary64) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im))))
(/.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))) (*.f64 (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64)) #s(literal 4 binary64))) (*.f64 (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 9 binary64)) #s(literal 512 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 6 binary64)) (-.f64 #s(literal 64 binary64) (*.f64 (*.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im))))) #s(literal 8 binary64)))) (-.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 4 binary64)) (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 6 binary64)) #s(literal 64 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im))))) #s(literal 8 binary64)) (-.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 4 binary64)) (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 6 binary64)) #s(literal 64 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 4 binary64)) (+.f64 #s(literal 16 binary64) (*.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) #s(literal 4 binary64)))) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 4 binary64)) #s(literal 16 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 4 binary64)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) #s(literal 8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 4 binary64)) (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im))) #s(literal -4 binary64)))) (neg.f64 (neg.f64 (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 4 binary64) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))))) (neg.f64 (-.f64 #s(literal 2 binary64) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) (*.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))))) (*.f64 im (*.f64 im im)) (pow.f64 (fma.f64 im im #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) (*.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))))) (*.f64 im im) (-.f64 (*.f64 (fma.f64 im im #s(literal 2 binary64)) (fma.f64 im im #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) (*.f64 im (*.f64 im im))) (fma.f64 im im #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) (*.f64 im (*.f64 im im)))) #s(literal 3 binary64)) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (*.f64 im im)))) (fma.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) (*.f64 im (*.f64 im im)))) (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) (*.f64 im (*.f64 im im)))) (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) (*.f64 im (*.f64 im im)))) (*.f64 im im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 4 binary64) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))) (/.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))) (fma.f64 (/.f64 #s(literal 4 binary64) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))) (/.f64 #s(literal 4 binary64) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))) (*.f64 (/.f64 (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))) (/.f64 #s(literal 4 binary64) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64)))))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)))) #s(literal 8 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im)) #s(literal 4 binary64)) (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im #s(literal 2 binary64))))))
(*.f64 (fma.f64 im (*.f64 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) (*.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im))) #s(literal -4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal -2 binary64))))

eval112.0ms (1%)

Memory
-29.4MiB live, 254.6MiB allocated
Compiler

Compiled 22 717 to 1 693 computations (92.5% saved)

prune204.0ms (1.8%)

Memory
16.8MiB live, 174.9MiB allocated
Pruning

18 alts after pruning (16 fresh and 2 done)

PrunedKeptTotal
New85015865
Fresh314
Picked325
Done000
Total85618874
Accuracy
100.0%
Counts
874 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
64.1%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
63.4%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
80.3%
(*.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))))
92.9%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
60.4%
(*.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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
60.7%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
58.2%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
89.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
58.5%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
57.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
55.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
56.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
55.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
41.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
39.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
36.5%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
32.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
Compiler

Compiled 620 to 360 computations (41.9% saved)

simplify615.0ms (5.3%)

Memory
5.8MiB live, 432.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
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
(*.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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
cost-diff0
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
cost-diff0
#s(approx (cos re) #s(literal 1 binary64))
cost-diff0
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
cost-diff0
#s(approx (cos re) #s(literal 1 binary64))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
cost-diff0
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
cost-diff0
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
cost-diff0
#s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))
cost-diff6720
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
Rules
18 236×lower-fma.f32
18 216×lower-fma.f64
3 626×lower-*.f32
3 606×lower-*.f64
1 956×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
048335
081335
1168331
2377327
3767327
41333327
51423327
61661327
72105327
82428327
92841327
103245327
113882327
125948327
136818327
147136327
157213327
167236327
177380327
187602327
197616327
207624327
217624327
08092322
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
#s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
im
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
#s(literal 1/4 binary64)
#s(literal -1/2 binary64)
#s(literal 1/2 binary64)
(cos.f64 re)
re
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 im))
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
#s(literal 1 binary64)
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 im im)
im
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 im #s(literal 1/24 binary64))
#s(literal 1/24 binary64)
#s(literal 1/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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
im
(fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im)
(*.f64 im im)
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
#s(literal 1/360 binary64)
#s(literal 1/12 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)
Outputs
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))))
#s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
im
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
#s(literal 1/4 binary64)
#s(literal -1/2 binary64)
#s(literal 1/2 binary64)
(cos.f64 re)
re
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))
(*.f64 (exp.f64 im) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 im))
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 im (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 im (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
#s(literal 1 binary64)
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 im im)
im
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 im #s(literal 1/24 binary64))
#s(literal 1/24 binary64)
#s(literal 1/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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 im (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 im (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) im) #s(literal 2 binary64)))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
(fma.f64 im (fma.f64 im (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) im) #s(literal 2 binary64))
im
(fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im)
(fma.f64 im (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))) im)
(*.f64 im im)
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
#s(literal 1/360 binary64)
#s(literal 1/12 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)

localize292.0ms (2.5%)

Memory
-0.0MiB live, 219.4MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
accuracy100.0%
(cos.f64 re)
accuracy100.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))))
accuracy80.3%
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy99.9%
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
accuracy99.7%
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
accuracy92.9%
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
accuracy52.2%
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
accuracy99.9%
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
accuracy99.5%
(*.f64 im #s(literal 1/24 binary64))
accuracy89.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
accuracy54.8%
#s(approx (cos re) #s(literal 1 binary64))
accuracy56.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
accuracy54.8%
#s(approx (cos re) #s(literal 1 binary64))
accuracy100.0%
(exp.f64 im)
accuracy100.0%
(cos.f64 re)
accuracy100.0%
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
accuracy55.7%
#s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))
Samples
115.0ms256×0valid
Compiler

Compiled 253 to 47 computations (81.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 94.0ms
ival-cos: 27.0ms (28.6% of total)
ival-add: 26.0ms (27.6% of total)
ival-mult: 26.0ms (27.6% of total)
const: 9.0ms (9.5% of total)
ival-exp: 4.0ms (4.2% of total)
exact: 1.0ms (1.1% of total)
ival-neg: 1.0ms (1.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series46.0ms (0.4%)

Memory
-22.0MiB live, 15.7MiB allocated
Counts
23 → 348
Calls
Call 1
Inputs
#<alt (fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))>
#<alt #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))>
#<alt (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))>
#<alt (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))>
#<alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))>
#<alt #s(approx (cos re) #s(literal 1 binary64))>
#<alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))>
#<alt (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))>
#<alt (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))>
#<alt (*.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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))>
#<alt #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))>
#<alt (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))>
#<alt (*.f64 re re)>
#<alt (*.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))))>
#<alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re))>
#<alt (cos.f64 re)>
#<alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))>
#<alt (exp.f64 im)>
#<alt (*.f64 im #s(literal 1/24 binary64))>
#<alt (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))>
#<alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))>
#<alt (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))>
#<alt (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))>
Outputs
#<alt (cos re)>
#<alt (+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))>
#<alt (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))>
#<alt (+ (* 1/2 (exp im)) (* 1/2 (exp (neg im))))>
#<alt (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (* -1/4 (exp (neg im)))))))>
#<alt (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (exp (neg im))))))))))>
#<alt (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (exp im)) (* -1/1440 (exp (neg im)))))))))))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))>
#<alt 1/2>
#<alt (+ 1/2 (* -1/2 im))>
#<alt (+ 1/2 (* im (- (* 1/4 im) 1/2)))>
#<alt (+ 1/2 (* im (- (* im (+ 1/4 (* -1/12 im))) 1/2)))>
#<alt (* 1/2 (exp (neg im)))>
#<alt (* 1/2 (exp (neg im)))>
#<alt (* 1/2 (exp (neg im)))>
#<alt (* 1/2 (exp (neg im)))>
#<alt (* 1/2 (exp (* -1 im)))>
#<alt (* 1/2 (exp (* -1 im)))>
#<alt (* 1/2 (exp (* -1 im)))>
#<alt (* 1/2 (exp (* -1 im)))>
#<alt 1/2>
#<alt (+ 1/2 (* -1/2 im))>
#<alt (+ 1/2 (* im (- (* 1/4 im) 1/2)))>
#<alt (+ 1/2 (* im (- (* 1/4 im) 1/2)))>
#<alt (* 1/4 (pow im 2))>
#<alt (* (pow im 2) (- 1/4 (* 1/2 (/ 1 im))))>
#<alt (* (pow im 2) (- (+ 1/4 (/ 1/2 (pow im 2))) (* 1/2 (/ 1 im))))>
#<alt (* (pow im 2) (- (+ 1/4 (/ 1/2 (pow im 2))) (* 1/2 (/ 1 im))))>
#<alt (* 1/4 (pow im 2))>
#<alt (* (pow im 2) (- 1/4 (* 1/2 (/ 1 im))))>
#<alt (* (pow im 2) (+ 1/4 (* -1 (/ (- 1/2 (* 1/2 (/ 1 im))) im))))>
#<alt (* (pow im 2) (+ 1/4 (* -1 (/ (- 1/2 (* 1/2 (/ 1 im))) im))))>
#<alt -1/2>
#<alt (- (* 1/4 im) 1/2)>
#<alt (- (* 1/4 im) 1/2)>
#<alt (- (* 1/4 im) 1/2)>
#<alt (* 1/4 im)>
#<alt (* im (- 1/4 (* 1/2 (/ 1 im))))>
#<alt (* im (- 1/4 (* 1/2 (/ 1 im))))>
#<alt (* im (- 1/4 (* 1/2 (/ 1 im))))>
#<alt (* 1/4 im)>
#<alt (* -1 (* im (- (* 1/2 (/ 1 im)) 1/4)))>
#<alt (* -1 (* im (- (* 1/2 (/ 1 im)) 1/4)))>
#<alt (* -1 (* im (- (* 1/2 (/ 1 im)) 1/4)))>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt 1>
#<alt (+ 1 (* -1/2 (pow re 2)))>
#<alt (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))>
#<alt (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (+ 1 (+ (* -1/2 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* 1/24 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))))))>
#<alt (+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* 1/24 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (* 1/24 (* (pow im 4) (cos re)))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt (* 1/24 (* (pow im 4) (cos re)))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt 1>
#<alt (+ 1 (* 1/2 (pow im 2)))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (* 1/24 (pow im 4))>
#<alt (* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))>
#<alt (* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))>
#<alt (* 1/24 (pow im 4))>
#<alt (* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))>
#<alt (* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt 1/2>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))>
#<alt (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt 1/2>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (* -1/4 (pow re 2))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (* -1/4 (pow re 2))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt 1/2>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))>
#<alt (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt 1>
#<alt (+ 1 (* -1/2 (pow re 2)))>
#<alt (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))>
#<alt (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt 2>
#<alt (+ 2 (pow im 2))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt 1>
#<alt (+ 1 im)>
#<alt (+ 1 (* im (+ 1 (* 1/2 im))))>
#<alt (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (exp im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt 1/2>
#<alt (+ 1/2 (* 1/24 (pow im 2)))>
#<alt (+ 1/2 (* 1/24 (pow im 2)))>
#<alt (+ 1/2 (* 1/24 (pow im 2)))>
#<alt (* 1/24 (pow im 2))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* 1/24 (pow im 2))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))>
#<alt 2>
#<alt (+ 2 (pow im 2))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (* 1/12 im)>
#<alt (* im (+ 1/12 (* 1/360 (pow im 2))))>
#<alt (* im (+ 1/12 (* 1/360 (pow im 2))))>
#<alt (* im (+ 1/12 (* 1/360 (pow im 2))))>
#<alt (* 1/360 (pow im 3))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* 1/360 (pow im 3))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt 1/12>
#<alt (+ 1/12 (* 1/360 (pow im 2)))>
#<alt (+ 1/12 (* 1/360 (pow im 2)))>
#<alt (+ 1/12 (* 1/360 (pow im 2)))>
#<alt (* 1/360 (pow im 2))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* 1/360 (pow im 2))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
Calls

87 calls:

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

simplify686.0ms (5.9%)

Memory
25.6MiB live, 696.1MiB allocated
Algorithm
egg-herbie
Rules
16 382×lower-fma.f64
16 382×lower-fma.f32
4 066×lower-*.f64
4 066×lower-*.f32
3 902×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02593438
17943177
224953094
358503033
473913033
080572808
Stop Event
iter limit
node limit
Counts
348 → 348
Calls
Call 1
Inputs
(cos re)
(+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(+ (* 1/2 (exp im)) (* 1/2 (exp (neg im))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (* -1/4 (exp (neg im)))))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (exp (neg im))))))))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (exp im)) (* -1/1440 (exp (neg im)))))))))))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
1/2
(+ 1/2 (* -1/2 im))
(+ 1/2 (* im (- (* 1/4 im) 1/2)))
(+ 1/2 (* im (- (* im (+ 1/4 (* -1/12 im))) 1/2)))
(* 1/2 (exp (neg im)))
(* 1/2 (exp (neg im)))
(* 1/2 (exp (neg im)))
(* 1/2 (exp (neg im)))
(* 1/2 (exp (* -1 im)))
(* 1/2 (exp (* -1 im)))
(* 1/2 (exp (* -1 im)))
(* 1/2 (exp (* -1 im)))
1/2
(+ 1/2 (* -1/2 im))
(+ 1/2 (* im (- (* 1/4 im) 1/2)))
(+ 1/2 (* im (- (* 1/4 im) 1/2)))
(* 1/4 (pow im 2))
(* (pow im 2) (- 1/4 (* 1/2 (/ 1 im))))
(* (pow im 2) (- (+ 1/4 (/ 1/2 (pow im 2))) (* 1/2 (/ 1 im))))
(* (pow im 2) (- (+ 1/4 (/ 1/2 (pow im 2))) (* 1/2 (/ 1 im))))
(* 1/4 (pow im 2))
(* (pow im 2) (- 1/4 (* 1/2 (/ 1 im))))
(* (pow im 2) (+ 1/4 (* -1 (/ (- 1/2 (* 1/2 (/ 1 im))) im))))
(* (pow im 2) (+ 1/4 (* -1 (/ (- 1/2 (* 1/2 (/ 1 im))) im))))
-1/2
(- (* 1/4 im) 1/2)
(- (* 1/4 im) 1/2)
(- (* 1/4 im) 1/2)
(* 1/4 im)
(* im (- 1/4 (* 1/2 (/ 1 im))))
(* im (- 1/4 (* 1/2 (/ 1 im))))
(* im (- 1/4 (* 1/2 (/ 1 im))))
(* 1/4 im)
(* -1 (* im (- (* 1/2 (/ 1 im)) 1/4)))
(* -1 (* im (- (* 1/2 (/ 1 im)) 1/4)))
(* -1 (* im (- (* 1/2 (/ 1 im)) 1/4)))
(* 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 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)))
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(* 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (+ (* -1/2 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* 1/24 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))))))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* 1/24 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(* 1/24 (* (pow im 4) (cos re)))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(* 1/24 (* (pow im 4) (cos re)))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(* 1/24 (pow im 4))
(* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(* 1/24 (pow im 4))
(* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(* 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 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/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* -1/4 (pow re 2)))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 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/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
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)))
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(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)))))))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
1
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(exp im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
1/2
(+ 1/2 (* 1/24 (pow im 2)))
(+ 1/2 (* 1/24 (pow im 2)))
(+ 1/2 (* 1/24 (pow im 2)))
(* 1/24 (pow im 2))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* 1/24 (pow im 2))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (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)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(* 1/12 im)
(* im (+ 1/12 (* 1/360 (pow im 2))))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(* 1/360 (pow im 3))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* 1/360 (pow im 3))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
1/12
(+ 1/12 (* 1/360 (pow im 2)))
(+ 1/12 (* 1/360 (pow im 2)))
(+ 1/12 (* 1/360 (pow im 2)))
(* 1/360 (pow im 2))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* 1/360 (pow im 2))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
Outputs
(cos re)
(cos.f64 re)
(+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))
(cos.f64 re)
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (exp im)) (* 1/2 (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (* -1/4 (exp (neg im)))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (exp (neg im))))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal -1/4 binary64))) #s(literal 1/2 binary64)))
(+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (exp im)) (* -1/1440 (exp (neg im)))))))))))))
(fma.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 re re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/2 im))
(fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* im (- (* 1/4 im) 1/2)))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(+ 1/2 (* im (- (* im (+ 1/4 (* -1/12 im))) 1/2)))
(fma.f64 im (fma.f64 im (fma.f64 im #s(literal -1/12 binary64) #s(literal 1/4 binary64)) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(* 1/2 (exp (neg im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (neg im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (neg im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (neg im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (* -1 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (* -1 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (* -1 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
(* 1/2 (exp (* -1 im)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im)))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/2 im))
(fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* im (- (* 1/4 im) 1/2)))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(+ 1/2 (* im (- (* 1/4 im) 1/2)))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(* 1/4 (pow im 2))
(*.f64 im (*.f64 im #s(literal 1/4 binary64)))
(* (pow im 2) (- 1/4 (* 1/2 (/ 1 im))))
(*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))
(* (pow im 2) (- (+ 1/4 (/ 1/2 (pow im 2))) (* 1/2 (/ 1 im))))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(* (pow im 2) (- (+ 1/4 (/ 1/2 (pow im 2))) (* 1/2 (/ 1 im))))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(* 1/4 (pow im 2))
(*.f64 im (*.f64 im #s(literal 1/4 binary64)))
(* (pow im 2) (- 1/4 (* 1/2 (/ 1 im))))
(*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))
(* (pow im 2) (+ 1/4 (* -1 (/ (- 1/2 (* 1/2 (/ 1 im))) im))))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(* (pow im 2) (+ 1/4 (* -1 (/ (- 1/2 (* 1/2 (/ 1 im))) im))))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
-1/2
#s(literal -1/2 binary64)
(- (* 1/4 im) 1/2)
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
(- (* 1/4 im) 1/2)
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
(- (* 1/4 im) 1/2)
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
(* 1/4 im)
(*.f64 im #s(literal 1/4 binary64))
(* im (- 1/4 (* 1/2 (/ 1 im))))
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
(* im (- 1/4 (* 1/2 (/ 1 im))))
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
(* im (- 1/4 (* 1/2 (/ 1 im))))
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
(* 1/4 im)
(*.f64 im #s(literal 1/4 binary64))
(* -1 (* im (- (* 1/2 (/ 1 im)) 1/4)))
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
(* -1 (* im (- (* 1/2 (/ 1 im)) 1/4)))
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
(* -1 (* im (- (* 1/2 (/ 1 im)) 1/4)))
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 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))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 re re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 (*.f64 im im) (*.f64 (cos.f64 re) (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))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 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 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 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 im) (exp.f64 (neg.f64 im))))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/24 binary64)) #s(literal -1/2 binary64))) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/720 binary64)) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 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))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 re re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 (*.f64 im im) (*.f64 (cos.f64 re) (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))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 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 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 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 im) (exp.f64 (neg.f64 im))))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(+ 1 (+ (* -1/2 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* 1/24 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))))))
(*.f64 (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/24 binary64)) #s(literal -1/2 binary64))) #s(literal 1 binary64)))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))) (* 1/24 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))))))))
(fma.f64 (*.f64 re re) (*.f64 (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/720 binary64)) #s(literal 1/24 binary64))) #s(literal -1/2 binary64))) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (cos re) (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* 1/24 (* (pow im 4) (cos re)))
(*.f64 (cos.f64 re) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* 1/24 (* (pow im 4) (cos re)))
(*.f64 (cos.f64 re) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(* 1/24 (pow im 4))
(*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64))))
(* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(* 1/24 (pow im 4))
(*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64))))
(* (pow im 4) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(* (pow im 4) (+ 1/24 (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow im 4)))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 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))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 re re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 (*.f64 im im) (*.f64 (cos.f64 re) (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))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 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 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 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 im) (exp.f64 (neg.f64 im))))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 re (*.f64 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 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal -1/4 binary64))) #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 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #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))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #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))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 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))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 re re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 (*.f64 im im) (*.f64 (cos.f64 re) (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))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 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 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 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 im) (exp.f64 (neg.f64 im))))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 re (*.f64 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 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/48 binary64) #s(literal -1/4 binary64))) #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 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/24 binary64)) #s(literal -1/2 binary64))) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/720 binary64)) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(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 im (fma.f64 im (*.f64 im (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
1
#s(literal 1 binary64)
(+ 1 im)
(+.f64 im #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* 1/2 im))))
(fma.f64 im (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(fma.f64 im (fma.f64 im (fma.f64 im #s(literal 1/6 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
1/2
#s(literal 1/2 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 (* 1/24 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/24 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* 1/24 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* 1/24 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(* (pow im 2) (+ 1/24 (* 1/2 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 im (fma.f64 im (*.f64 im (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(* 1/12 im)
(*.f64 im #s(literal 1/12 binary64))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* 1/360 (pow im 3))
(*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* 1/360 (pow im 3))
(*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
1/12
#s(literal 1/12 binary64)
(+ 1/12 (* 1/360 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(+ 1/12 (* 1/360 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(+ 1/12 (* 1/360 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* 1/360 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/360 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* 1/360 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/360 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))

rewrite480.0ms (4.1%)

Memory
9.5MiB live, 722.3MiB allocated
Algorithm
batch-egg-rewrite
Rules
6 306×lower-*.f32
6 286×lower-*.f64
4 628×lower-/.f64
4 628×lower-/.f32
4 540×lower-fma.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
048258
081258
1301240
22163240
09414237
Stop Event
iter limit
node limit
iter limit
Counts
23 → 331
Calls
Call 1
Inputs
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
#s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.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))
(cos.f64 re)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(exp.f64 im)
(*.f64 im #s(literal 1/24 binary64))
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
Outputs
(+.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))
(+.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(-.f64 (/.f64 (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(-.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))) (/.f64 (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (exp.f64 im)) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 im) (cos.f64 re)) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (cos.f64 re) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(fma.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))
(fma.f64 (exp.f64 im) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (exp.f64 im) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))
(fma.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))
(fma.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re))) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))))) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re))) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 3 binary64))) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re))) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))))) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 3 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))))
(/.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re))) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))))))
(/.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))) (neg.f64 (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (*.f64 (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)))) (*.f64 (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 9 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 6 binary64)) (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 6 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) #s(literal 3 binary64)))) (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re))) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 6 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re))) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 6 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 4 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 4 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 4 binary64)) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))) (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re))) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))) (neg.f64 (neg.f64 (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))))) (neg.f64 (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)))))
(pow.f64 (/.f64 (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re))) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re)))))) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 3 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))) #s(literal -1 binary64))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))))
(*.f64 (cos.f64 re) (+.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re)) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (-.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))) (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re))) (*.f64 (*.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) re))))))))
(*.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))) (/.f64 #s(literal 1 binary64) (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))))
(*.f64 (/.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))))) (cos.f64 re)) (/.f64 (*.f64 (cos.f64 re) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))) (-.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) (exp.f64 im)))))
#s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64)))
(+.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))
(+.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) #s(literal 1/2 binary64))
(+.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64)))
(+.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 im im))) (*.f64 im #s(literal -1/2 binary64)))
(-.f64 (/.f64 (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (/.f64 (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (-.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))))
(fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(fma.f64 im (*.f64 im #s(literal 1/4 binary64)) (fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64)))
(fma.f64 #s(literal 1/4 binary64) (*.f64 im im) (fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64)))
(fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) im #s(literal 1/2 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/4 binary64) (fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 im #s(literal 1/4 binary64)) im (fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (fma.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) #s(literal 1/8 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64)) (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal -1/4 binary64))))
(/.f64 (fma.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))))
(/.f64 (fma.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (fma.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) #s(literal 1/8 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64)) (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal -1/4 binary64)))))
(/.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal -1/4 binary64)) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))))))
(/.f64 (neg.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal -1/4 binary64))) (neg.f64 (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))) (-.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64)) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) #s(literal 9 binary64)) #s(literal 1/512 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))) (*.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))) (-.f64 #s(literal 1/64 binary64) (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))))))) (-.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))) (*.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))))) #s(literal 1/64 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))) (*.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))))) #s(literal 1/64 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (+.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) #s(literal 1/4 binary64)))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))) #s(literal 1/16 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal 1/4 binary64)) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal -1/4 binary64)))) (neg.f64 (neg.f64 (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/64 binary64) (pow.f64 (fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (-.f64 (*.f64 (fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64)) (fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (fma.f64 im #s(literal -1/2 binary64) #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 im im))) #s(literal 3 binary64)) (*.f64 #s(literal -1/8 binary64) (*.f64 im (*.f64 im im)))) (fma.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 im im))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 im im))) (-.f64 (*.f64 (*.f64 im #s(literal -1/2 binary64)) (*.f64 im #s(literal -1/2 binary64))) (*.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 im im))) (*.f64 im #s(literal -1/2 binary64))))))
(pow.f64 (/.f64 (-.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) (fma.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) #s(literal 1/8 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64)) (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal -1/4 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))))) #s(literal 1/8 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))))))
(*.f64 (fma.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) (*.f64 im (*.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)))) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))))
(+.f64 #s(literal -1/2 binary64) (*.f64 im #s(literal 1/4 binary64)))
(+.f64 (*.f64 im #s(literal 1/4 binary64)) #s(literal -1/2 binary64))
(-.f64 (/.f64 (*.f64 (*.f64 im im) #s(literal 1/16 binary64)) (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal -1/2 binary64) (*.f64 im #s(literal 1/4 binary64)))) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/16 binary64)) (-.f64 #s(literal -1/2 binary64) (*.f64 im #s(literal 1/4 binary64)))))
(fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64))
(fma.f64 #s(literal 1/4 binary64) im #s(literal -1/2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal 1/4 binary64)) (*.f64 im #s(literal -1/8 binary64))) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/64 binary64) #s(literal -1/8 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal -1/4 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/64 binary64) #s(literal -1/8 binary64)) (-.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal 1/4 binary64)) (*.f64 im #s(literal -1/8 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/64 binary64) #s(literal -1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 im im) #s(literal 1/16 binary64)) (*.f64 im #s(literal -1/8 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal 1/4 binary64)) (*.f64 im #s(literal -1/8 binary64))) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/64 binary64) #s(literal -1/8 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal -1/4 binary64)))))
(/.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal -1/4 binary64)) (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/64 binary64) #s(literal -1/8 binary64))) (neg.f64 (-.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal 1/4 binary64)) (*.f64 im #s(literal -1/8 binary64)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/64 binary64) #s(literal -1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 im im) #s(literal 1/16 binary64)) (*.f64 im #s(literal -1/8 binary64))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal -1/4 binary64))) (neg.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 im im) #s(literal 1/16 binary64))) (-.f64 #s(literal -1/2 binary64) (*.f64 im #s(literal 1/4 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 1/16 binary64)) (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64)) (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im))) #s(literal 1/262144 binary64) #s(literal -1/512 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/4096 binary64) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 im (*.f64 im im)) #s(literal -1/512 binary64)))) (-.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal 1/4 binary64)) (*.f64 im #s(literal -1/8 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/4096 binary64)) #s(literal 1/64 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/64 binary64)) #s(literal -1/8 binary64)) (-.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal 1/4 binary64)) (*.f64 im #s(literal -1/8 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/4096 binary64)) #s(literal 1/64 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/16 binary64)) (*.f64 (*.f64 im im) #s(literal 1/16 binary64)) (+.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal 1/16 binary64)) #s(literal 1/4 binary64)))) (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 1/16 binary64)) (*.f64 (*.f64 im im) #s(literal 1/16 binary64))) #s(literal 1/16 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal 1/4 binary64)) (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/64 binary64) #s(literal -1/8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal 1/4 binary64)) (*.f64 im #s(literal -1/8 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal -1/4 binary64)))) (neg.f64 (neg.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 im im) #s(literal 1/16 binary64)))) (neg.f64 (-.f64 #s(literal -1/2 binary64) (*.f64 im #s(literal 1/4 binary64)))))
(pow.f64 (/.f64 (-.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal 1/4 binary64)) (*.f64 im #s(literal -1/8 binary64))) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/64 binary64) #s(literal -1/8 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal -1/4 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/64 binary64) #s(literal -1/8 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal 1/4 binary64)) (*.f64 im #s(literal -1/8 binary64)))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/16 binary64) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 im #s(literal 1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(literal 1 binary64))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(+.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(+.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(approx (cos re) #s(literal 1 binary64)))
(-.f64 (/.f64 (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (-.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(approx (cos re) #s(literal 1 binary64)))) (/.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(approx (cos re) #s(literal 1 binary64)))))
(fma.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(fma.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(approx (cos re) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) #s(approx (cos re) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im im)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im im) #s(approx (cos re) #s(literal 1 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (-.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(approx (cos re) #s(literal 1 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(approx (cos re) #s(literal 1 binary64))))
(/.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64))) (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(/.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))))) (neg.f64 (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (-.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(approx (cos re) #s(literal 1 binary64)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))))) (neg.f64 (-.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(approx (cos re) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)))) (neg.f64 (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)))) (neg.f64 (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))) (neg.f64 (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))) (neg.f64 (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(/.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))))) (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))
(+.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64))
(+.f64 (*.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/24 binary64))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+.f64 (+.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/24 binary64)))))) (*.f64 #s(literal 1/2 binary64) (*.f64 im im)))
(-.f64 (/.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (/.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))
(fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(fma.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/24 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 im (*.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im im)) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) (*.f64 im (*.f64 im #s(literal 1/24 binary64))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im (*.f64 im im)) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 im (*.f64 im #s(literal 1/24 binary64))) (*.f64 im im) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/24 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (*.f64 im im)) (*.f64 im #s(literal 1/24 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) im #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 im (*.f64 im #s(literal 1/24 binary64))) im) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64)) (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64)) (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)))))
(/.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64))) (neg.f64 (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64))) (neg.f64 (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))) (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))) (*.f64 (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64)) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 9 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 6 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))))) (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 6 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))) #s(literal 1 binary64)) (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 6 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (+.f64 #s(literal 1 binary64) (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))) (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im))) (pow.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/24 binary64))))) (*.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/24 binary64))))) (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))) (*.f64 (*.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/24 binary64))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))))))
(/.f64 (+.f64 (pow.f64 (+.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/24 binary64)))))) #s(literal 3 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/8 binary64))) (fma.f64 (+.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/24 binary64)))))) (+.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/24 binary64)))))) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) (*.f64 #s(literal 1/2 binary64) (*.f64 im im))) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/24 binary64)))))) (*.f64 #s(literal 1/2 binary64) (*.f64 im im))))))
(pow.f64 (/.f64 (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64)) (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))
(*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))
(+.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))
(+.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))))
(fma.f64 re (*.f64 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))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re #s(literal -1/4 binary64)) re #s(literal 1/2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))) (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)) (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64))))
(/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64)) (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))
(/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))) (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)) (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)))))
(/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64))) (neg.f64 (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))) (*.f64 (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64))) (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)))) #s(literal 1/512 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64))) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal -1/512 binary64)))) (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)))) #s(literal 1/64 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64))) #s(literal 1/8 binary64)) (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)))) #s(literal 1/64 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (+.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal 1/4 binary64)))) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)))) #s(literal 1/16 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)))) (neg.f64 (neg.f64 (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))))
(pow.f64 (/.f64 (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))) (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)) (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(pow.f64 re #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 2 binary64))
(*.f64 re re)
(*.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) #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 (*.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 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 (*.f64 (cos.f64 re) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(literal 1/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 #s(literal 1/2 binary64) (cos.f64 re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(cos.f64 re)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(exp.f64 im)
(*.f64 im #s(literal 1/24 binary64))
(*.f64 #s(literal 1/24 binary64) im)
(+.f64 #s(literal 1/2 binary64) (*.f64 im (*.f64 im #s(literal 1/24 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal 1/24 binary64))) #s(literal 1/2 binary64))
(-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 im (*.f64 im #s(literal 1/24 binary64))))) (/.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 im (*.f64 im #s(literal 1/24 binary64))))))
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 (*.f64 im #s(literal 1/24 binary64)) im #s(literal 1/2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal -1/4 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal -1/4 binary64)))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal -1/4 binary64))) (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 im (*.f64 im #s(literal 1/24 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64))) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im))))) #s(literal 1/2641807540224 binary64) #s(literal 1/512 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im)))) #s(literal 1/191102976 binary64) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/110592 binary64)))) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im)))) #s(literal 1/191102976 binary64)) #s(literal 1/64 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64))) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im)))) #s(literal 1/191102976 binary64)) #s(literal 1/64 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64)) (+.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64)) #s(literal 1/4 binary64)))) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64))) #s(literal 1/16 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal -1/4 binary64)))) (neg.f64 (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64)))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 im (*.f64 im #s(literal 1/24 binary64))))))
(pow.f64 (/.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal -1/4 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im im) #s(literal 1/48 binary64)))))
(*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal -1/2 binary64))))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
(+.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))
(+.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))) (/.f64 (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))) (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))))
(fma.f64 im #s(literal 1/12 binary64) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im im) (*.f64 im #s(literal 1/360 binary64)) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 #s(literal 1/360 binary64) (*.f64 im (*.f64 im im)) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 #s(literal 1/12 binary64) im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) im (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im #s(literal 1/360 binary64)) (*.f64 im im) (*.f64 im #s(literal 1/12 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/1728 binary64))) (fma.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (-.f64 (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))) (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64)))) (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64))))
(/.f64 (*.f64 im (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64))) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))
(/.f64 (*.f64 im (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64))) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) im) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/1728 binary64)))) (neg.f64 (fma.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (-.f64 (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))) (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))))) (neg.f64 (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)))) (neg.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)))) (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) im)) (neg.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im)) (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/1728 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)))) (fma.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64)) (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) im)
(+.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) (/.f64 #s(literal 1/144 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(-.f64 (/.f64 #s(literal 1/144 binary64) (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (/.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64)) (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64))
(fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) (+.f64 #s(literal 1/144 binary64) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64))) (neg.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64))) (neg.f64 (+.f64 #s(literal 1/144 binary64) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64))) (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (-.f64 #s(literal 1/144 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64))) (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)) #s(literal 1/144 binary64))) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im))))) #s(literal 1/101559956668416000000000 binary64) #s(literal 1/5159780352 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im)))) #s(literal 1/2176782336000000 binary64) (-.f64 #s(literal 1/2985984 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/80621568000 binary64)))) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im)))) #s(literal 1/2176782336000000 binary64)) #s(literal 1/2985984 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64))) #s(literal 1/1728 binary64)) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im)))) #s(literal 1/2176782336000000 binary64)) #s(literal 1/2985984 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64)) (+.f64 #s(literal 1/20736 binary64) (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64)) #s(literal 1/144 binary64)))) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64))) #s(literal 1/20736 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)))) (neg.f64 (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/144 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64)))) (neg.f64 (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))))
(pow.f64 (/.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/46656000 binary64)) #s(literal 1/1728 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))

eval95.0ms (0.8%)

Memory
18.6MiB live, 249.6MiB allocated
Compiler

Compiled 20 094 to 1 493 computations (92.6% saved)

prune123.0ms (1.1%)

Memory
-35.5MiB live, 219.1MiB allocated
Pruning

33 alts after pruning (29 fresh and 4 done)

PrunedKeptTotal
New70020720
Fresh2911
Picked325
Done022
Total70533738
Accuracy
100.0%
Counts
738 → 33
Alt Table
Click to see full alt table
StatusAccuracyProgram
80.3%
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) #s(approx (exp im) (fma.f64 im (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))))))
64.1%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
63.4%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
80.3%
(*.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))))
92.9%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
54.8%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
60.4%
(*.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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64))))
60.4%
(*.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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
41.6%
(*.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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
60.4%
(*.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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
41.6%
(*.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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
60.4%
(*.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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
57.4%
(*.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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
53.1%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
60.7%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
54.6%
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
54.6%
(*.f64 #s(approx (* 1/2 (cos re)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
13.4%
(*.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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
58.2%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
49.4%
(*.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))))
55.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
35.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
89.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
58.5%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
55.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
55.2%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
26.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
56.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
55.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
41.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
39.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
36.5%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
32.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
Compiler

Compiled 1 439 to 791 computations (45% saved)

simplify297.0ms (2.6%)

Memory
-5.4MiB live, 558.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
cost-diff0
#s(approx (cos re) #s(literal 1 binary64))
cost-diff0
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) im)
cost-diff0
(fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
cost-diff0
(*.f64 re #s(literal -1/2 binary64))
cost-diff0
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
cost-diff0
#s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
cost-diff0
(*.f64 im im)
cost-diff0
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))
cost-diff0
#s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
cost-diff0
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
Rules
9 704×lower-fma.f32
9 676×lower-fma.f64
3 886×lower-*.f32
3 856×lower-*.f64
1 920×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062584
0108554
1229538
2518522
31089522
41928522
52140522
62676522
73413522
84190522
95269522
106353522
08105512
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
#s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 im im)
im
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64))
(*.f64 im (fma.f64 (*.f64 im 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))
#s(literal 1/720 binary64)
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(cos.f64 re)
re
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
re
(*.f64 re #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
#s(literal 1 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) im)
#s(approx (cos re) #s(literal 1 binary64))
#s(literal 1 binary64)
im
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 im #s(literal 1/24 binary64))
#s(literal 1/24 binary64)
#s(literal 1/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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
im
(fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im)
(*.f64 im im)
(*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))
(*.f64 im #s(literal 1/360 binary64))
#s(literal 1/360 binary64)
#s(literal 1/12 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64)))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))
im
(fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im)
(*.f64 im im)
(*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))
(fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64))
(*.f64 im (*.f64 im (*.f64 im im)))
(*.f64 im (*.f64 im im))
#s(literal 1/129600 binary64)
#s(literal -1/144 binary64)
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))
(*.f64 im #s(literal 1/360 binary64))
#s(literal 1/360 binary64)
#s(literal -1/12 binary64)
#s(literal 2 binary64)
Outputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64))) (cos.f64 re))
#s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
#s(approx (* 1 (cosh im)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(*.f64 im im)
im
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
(*.f64 im (fma.f64 im (*.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 im (*.f64 im #s(literal 1/720 binary64)) #s(literal 1/24 binary64))
#s(literal 1/720 binary64)
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(cos.f64 re)
re
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
re
(*.f64 re #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
#s(literal 1 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 im (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 im (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) im)
(*.f64 im #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
#s(literal 1 binary64)
im
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))
(fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 im #s(literal 1/24 binary64))
#s(literal 1/24 binary64)
#s(literal 1/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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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)))
#s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 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))
(fma.f64 re (*.f64 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))
im
(fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im)
(fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im)
(*.f64 im im)
(*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64)))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(*.f64 im #s(literal 1/360 binary64))
#s(literal 1/360 binary64)
#s(literal 1/12 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (fma.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/129600 binary64)))) #s(literal -1/144 binary64)) (/.f64 (*.f64 im (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) 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)))
#s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 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))
(fma.f64 re (*.f64 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (fma.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/129600 binary64)))) #s(literal -1/144 binary64)) (/.f64 (*.f64 im (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) im) #s(literal 2 binary64)))
(fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))
(fma.f64 im (fma.f64 (fma.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/129600 binary64)))) #s(literal -1/144 binary64)) (/.f64 (*.f64 im (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))
im
(fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im)
(fma.f64 (fma.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/129600 binary64)))) #s(literal -1/144 binary64)) (/.f64 (*.f64 im (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) im)
(*.f64 im im)
(*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))))
(/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/129600 binary64)))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))
(/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))
(/.f64 (fma.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/129600 binary64)))) #s(literal -1/144 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))
(fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64))
(fma.f64 im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/129600 binary64)))) #s(literal -1/144 binary64))
(*.f64 im (*.f64 im (*.f64 im im)))
(*.f64 im (*.f64 im im))
#s(literal 1/129600 binary64)
#s(literal -1/144 binary64)
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))
(*.f64 im #s(literal 1/360 binary64))
#s(literal 1/360 binary64)
#s(literal -1/12 binary64)
#s(literal 2 binary64)

localize308.0ms (2.7%)

Memory
24.0MiB live, 525.9MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy99.7%
(*.f64 im #s(literal 1/360 binary64))
accuracy92.9%
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64)))
accuracy71.9%
(/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))
accuracy52.2%
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
accuracy99.7%
(*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64)))
accuracy99.7%
(*.f64 im #s(literal 1/360 binary64))
accuracy92.9%
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
accuracy52.2%
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
accuracy99.8%
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) im)
accuracy99.5%
(*.f64 im #s(literal 1/24 binary64))
accuracy89.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
accuracy54.8%
#s(approx (cos re) #s(literal 1 binary64))
accuracy100.0%
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
accuracy100.0%
(*.f64 re #s(literal -1/2 binary64))
accuracy56.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
accuracy52.2%
#s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))
accuracy99.9%
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))
accuracy99.9%
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
accuracy99.7%
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
accuracy92.9%
#s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
Samples
172.0ms256×0valid
Compiler

Compiled 423 to 67 computations (84.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 141.0ms
ival-mult: 86.0ms (61.1% of total)
const: 19.0ms (13.5% of total)
ival-add: 18.0ms (12.8% of total)
ival-cos: 6.0ms (4.3% of total)
ival-exp: 4.0ms (2.8% of total)
ival-cosh: 3.0ms (2.1% of total)
ival-div: 2.0ms (1.4% 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)

series20.0ms (0.2%)

Memory
-13.4MiB live, 38.8MiB allocated
Counts
25 → 384
Calls
Call 1
Inputs
#<alt (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))>
#<alt #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64)))>
#<alt (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))>
#<alt (*.f64 im im)>
#<alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))>
#<alt #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))>
#<alt (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))>
#<alt (*.f64 re #s(literal -1/2 binary64))>
#<alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))>
#<alt (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64)))>
#<alt (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im)>
#<alt #s(approx (cos re) #s(literal 1 binary64))>
#<alt (*.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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))>
#<alt #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))>
#<alt (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))>
#<alt (*.f64 re re)>
#<alt (*.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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))>
#<alt (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))>
#<alt (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))>
#<alt (*.f64 im #s(literal 1/24 binary64))>
#<alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))>
#<alt (*.f64 im #s(literal 1/360 binary64))>
#<alt (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64)))>
#<alt (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))>
#<alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64)))>
Outputs
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))>
#<alt 1>
#<alt (+ 1 (* 1/2 (pow im 2)))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt (* 1/2 (+ (exp im) (/ 1 (exp im))))>
#<alt 1>
#<alt (+ 1 (* 1/2 (pow im 2)))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))>
#<alt (* 1/720 (pow im 6))>
#<alt (* (pow im 6) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))>
#<alt (* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (+ (* 1/24 (/ 1 (pow im 2))) (/ 1 (pow im 6))))))>
#<alt (* 1/720 (pow im 6))>
#<alt (* (pow im 6) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))>
#<alt (* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (+ (* 1/24 (/ 1 (pow im 2))) (/ 1 (pow im 6))))))>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt 1>
#<alt (+ 1 (* -1/2 (pow re 2)))>
#<alt (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))>
#<alt (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt 1>
#<alt (+ 1 (* -1/2 (pow re 2)))>
#<alt (+ 1 (* -1/2 (pow re 2)))>
#<alt (+ 1 (* -1/2 (pow re 2)))>
#<alt (* -1/2 (pow re 2))>
#<alt (* (pow re 2) (- (/ 1 (pow re 2)) 1/2))>
#<alt (* (pow re 2) (- (/ 1 (pow re 2)) 1/2))>
#<alt (* (pow re 2) (- (/ 1 (pow re 2)) 1/2))>
#<alt (* -1/2 (pow re 2))>
#<alt (* (pow re 2) (- (/ 1 (pow re 2)) 1/2))>
#<alt (* (pow re 2) (- (/ 1 (pow re 2)) 1/2))>
#<alt (* (pow re 2) (- (/ 1 (pow re 2)) 1/2))>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* -1/2 re)>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))>
#<alt (+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (- (* -1/2 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) 1/2))))>
#<alt (+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (- (+ (* -1/2 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (* (pow re 2) (+ 1/24 (* 1/24 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))) 1/2))))>
#<alt (+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (- (+ (* -1/2 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (* (pow re 2) (+ 1/24 (+ (* 1/24 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (* (pow re 2) (- (* -1/720 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) 1/720)))))) 1/2))))>
#<alt (+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (* 1/24 (* (pow im 4) (cos re)))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt (* 1/24 (* (pow im 4) (cos re)))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt (* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))>
#<alt im>
#<alt (+ im (* -1/2 (* im (pow re 2))))>
#<alt (+ im (* (pow re 2) (+ (* -1/2 im) (* 1/24 (* im (pow re 2))))))>
#<alt (+ im (* (pow re 2) (+ (* -1/2 im) (* (pow re 2) (+ (* -1/720 (* im (pow re 2))) (* 1/24 im))))))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt (* im (cos re))>
#<alt 1>
#<alt (+ 1 (* -1/2 (pow re 2)))>
#<alt (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))>
#<alt (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (cos re)>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt 1/2>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))>
#<alt (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt (* 1/2 (cos re))>
#<alt 1/2>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (+ 1/2 (* -1/4 (pow re 2)))>
#<alt (* -1/4 (pow re 2))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (* -1/4 (pow re 2))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (* 1/2 (+ (exp im) (exp (neg im))))>
#<alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))>
#<alt (+ (* 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))))))))>
#<alt (+ (* 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)))))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (cos re)>
#<alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))>
#<alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))>
#<alt (* 1/24 im)>
#<alt (* im (+ 1/24 (* 1/720 (pow im 2))))>
#<alt (* im (+ 1/24 (* 1/720 (pow im 2))))>
#<alt (* im (+ 1/24 (* 1/720 (pow im 2))))>
#<alt (* 1/720 (pow im 3))>
#<alt (* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* 1/720 (pow im 3))>
#<alt (* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt 1/24>
#<alt (+ 1/24 (* 1/720 (pow im 2)))>
#<alt (+ 1/24 (* 1/720 (pow im 2)))>
#<alt (+ 1/24 (* 1/720 (pow im 2)))>
#<alt (* 1/720 (pow im 2))>
#<alt (* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* 1/720 (pow im 2))>
#<alt (* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt (* 1/24 im)>
#<alt 2>
#<alt (+ 2 (pow im 2))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/360 im)>
#<alt (* 1/12 im)>
#<alt (* im (+ 1/12 (* 1/360 (pow im 2))))>
#<alt (* im (+ 1/12 (* 1/360 (pow im 2))))>
#<alt (* im (+ 1/12 (* 1/360 (pow im 2))))>
#<alt (* 1/360 (pow im 3))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* 1/360 (pow im 3))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt 1/12>
#<alt (+ 1/12 (* 1/360 (pow im 2)))>
#<alt (+ 1/12 (* 1/360 (pow im 2)))>
#<alt (+ 1/12 (* 1/360 (pow im 2)))>
#<alt (* 1/360 (pow im 2))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* 1/360 (pow im 2))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt (* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))>
#<alt 2>
#<alt (+ 2 (pow im 2))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))>
#<alt (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (neg im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
#<alt (+ (exp im) (exp (* -1 im)))>
Calls

96 calls:

TimeVariablePointExpression
5.0ms
im
@-inf
(* im (+ (* (* im im) 1/720) 1/24))
1.0ms
re
@inf
(+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re))
1.0ms
im
@inf
(/ (+ (* (* im (* im (* im im))) 1/129600) -1/144) (+ (* im (* im 1/360)) -1/12))
1.0ms
re
@0
(+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re))
1.0ms
re
@-inf
(+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re))

simplify362.0ms (3.1%)

Memory
8.0MiB live, 722.0MiB allocated
Algorithm
egg-herbie
Rules
11 070×lower-fma.f64
11 070×lower-fma.f32
3 618×lower-*.f64
3 618×lower-*.f32
3 580×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02203606
16843465
219763373
350153326
461453326
080713109
Stop Event
iter limit
node limit
Counts
384 → 383
Calls
Call 1
Inputs
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 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 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(* 1/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 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))))))
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 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)))
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* -1/2 (pow re 2)))
(* -1/2 (pow re 2))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(* -1/2 (pow re 2))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(* -1/2 re)
(* -1/2 re)
(* -1/2 re)
(* -1/2 re)
(* -1/2 re)
(* -1/2 re)
(* -1/2 re)
(* -1/2 re)
(* -1/2 re)
(* -1/2 re)
(* -1/2 re)
(* -1/2 re)
(* 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (- (* -1/2 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) 1/2))))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (- (+ (* -1/2 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (* (pow re 2) (+ 1/24 (* 1/24 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))) 1/2))))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (- (+ (* -1/2 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (* (pow re 2) (+ 1/24 (+ (* 1/24 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (* (pow re 2) (- (* -1/720 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) 1/720)))))) 1/2))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(* 1/24 (* (pow im 4) (cos re)))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(* 1/24 (* (pow im 4) (cos re)))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
im
(+ im (* -1/2 (* im (pow re 2))))
(+ im (* (pow re 2) (+ (* -1/2 im) (* 1/24 (* im (pow re 2))))))
(+ im (* (pow re 2) (+ (* -1/2 im) (* (pow re 2) (+ (* -1/720 (* im (pow re 2))) (* 1/24 im))))))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
(* im (cos re))
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)))
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(cos re)
(* 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 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/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* -1/4 (pow re 2)))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 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 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(* 1/24 im)
(* im (+ 1/24 (* 1/720 (pow im 2))))
(* im (+ 1/24 (* 1/720 (pow im 2))))
(* im (+ 1/24 (* 1/720 (pow im 2))))
(* 1/720 (pow im 3))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* 1/720 (pow im 3))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
1/24
(+ 1/24 (* 1/720 (pow im 2)))
(+ 1/24 (* 1/720 (pow im 2)))
(+ 1/24 (* 1/720 (pow im 2)))
(* 1/720 (pow im 2))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* 1/720 (pow im 2))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
(* 1/24 im)
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)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(* 1/360 im)
(* 1/360 im)
(* 1/360 im)
(* 1/360 im)
(* 1/360 im)
(* 1/360 im)
(* 1/360 im)
(* 1/360 im)
(* 1/360 im)
(* 1/360 im)
(* 1/360 im)
(* 1/360 im)
(* 1/12 im)
(* im (+ 1/12 (* 1/360 (pow im 2))))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(* 1/360 (pow im 3))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* 1/360 (pow im 3))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
1/12
(+ 1/12 (* 1/360 (pow im 2)))
(+ 1/12 (* 1/360 (pow im 2)))
(+ 1/12 (* 1/360 (pow im 2)))
(* 1/360 (pow im 2))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* 1/360 (pow im 2))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (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)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
Outputs
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 (*.f64 im im) (*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 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))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(fma.f64 (*.f64 re re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(* 1/720 (pow im 6))
(*.f64 #s(literal 1/720 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))
(* (pow im 6) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 #s(literal 1/720 binary64) (/.f64 #s(literal 1/24 binary64) (*.f64 im im))))
(* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 #s(literal 1/720 binary64) (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 im im)) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) (*.f64 im im))))))
(* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (+ (* 1/24 (/ 1 (pow im 2))) (/ 1 (pow im 6))))))
(fma.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 #s(literal 1/720 binary64) (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 im im)) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) (*.f64 im im))))) #s(literal 1 binary64))
(* 1/720 (pow im 6))
(*.f64 #s(literal 1/720 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))
(* (pow im 6) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 #s(literal 1/720 binary64) (/.f64 #s(literal 1/24 binary64) (*.f64 im im))))
(* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 #s(literal 1/720 binary64) (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 im im)) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) (*.f64 im im))))))
(* (pow im 6) (+ 1/720 (+ (/ 1/2 (pow im 4)) (+ (* 1/24 (/ 1 (pow im 2))) (/ 1 (pow im 6))))))
(fma.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 #s(literal 1/720 binary64) (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 im im)) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) (*.f64 im im))))) #s(literal 1 binary64))
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 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))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (*.f64 re re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 (*.f64 im im) (*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/24 binary64)) #s(literal -1/2 binary64))) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(* -1/2 (pow re 2))
(*.f64 (*.f64 re re) #s(literal -1/2 binary64))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(* -1/2 (pow re 2))
(*.f64 (*.f64 re re) #s(literal -1/2 binary64))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* -1/2 re)
(*.f64 re #s(literal -1/2 binary64))
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 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))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (*.f64 re re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 (*.f64 im im) (*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (- (* -1/2 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) 1/2))))
(fma.f64 re (*.f64 re (fma.f64 (*.f64 im im) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) #s(literal -1/2 binary64) #s(literal -1/4 binary64)) #s(literal -1/2 binary64))) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (- (+ (* -1/2 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (* (pow re 2) (+ 1/24 (* 1/24 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))) 1/2))))
(fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (fma.f64 (*.f64 re re) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (fma.f64 re (*.f64 re #s(literal 1/24 binary64)) #s(literal -1/2 binary64))) #s(literal 1 binary64)))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))) (* (pow re 2) (- (+ (* -1/2 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (* (pow re 2) (+ 1/24 (+ (* 1/24 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (* (pow re 2) (- (* -1/720 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) 1/720)))))) 1/2))))
(fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (*.f64 (*.f64 re re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/720 binary64)) #s(literal -1/720 binary64))) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (fma.f64 re (*.f64 re #s(literal 1/24 binary64)) #s(literal -1/2 binary64)))) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* 1/24 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(* 1/24 (* (pow im 4) (cos re)))
(*.f64 (cos.f64 re) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(* 1/24 (* (pow im 4) (cos re)))
(*.f64 (cos.f64 re) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (* 1/2 (/ (cos re) (pow im 2)))))
(*.f64 (cos.f64 re) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(* (pow im 4) (+ (* 1/24 (cos re)) (+ (* 1/2 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
im
(+ im (* -1/2 (* im (pow re 2))))
(fma.f64 im (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) im)
(+ im (* (pow re 2) (+ (* -1/2 im) (* 1/24 (* im (pow re 2))))))
(fma.f64 (*.f64 im (*.f64 re re)) (fma.f64 re (*.f64 re #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) im)
(+ im (* (pow re 2) (+ (* -1/2 im) (* (pow re 2) (+ (* -1/720 (* im (pow re 2))) (* 1/24 im))))))
(fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (*.f64 im (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)))) (*.f64 im #s(literal -1/2 binary64))) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
(* im (cos re))
(*.f64 (cos.f64 re) im)
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal 1/24 binary64)) #s(literal -1/2 binary64))) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 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))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (*.f64 re re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 (*.f64 im im) (*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 re (*.f64 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 re re) (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #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 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* -1/4 (pow re 2))
(*.f64 re (*.f64 re #s(literal -1/4 binary64)))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* -1/4 (pow re 2))
(*.f64 re (*.f64 re #s(literal -1/4 binary64)))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 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))))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re #s(literal 1/48 binary64)) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (*.f64 re re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (cos.f64 re) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #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 (*.f64 im im) (*.f64 (cos.f64 re) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64))) (cos.f64 re))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* im (+ 1/24 (* 1/720 (pow im 2))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
(* im (+ 1/24 (* 1/720 (pow im 2))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
(* im (+ 1/24 (* 1/720 (pow im 2))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
(* 1/720 (pow im 3))
(*.f64 #s(literal 1/720 binary64) (*.f64 im (*.f64 im im)))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
(* 1/720 (pow im 3))
(*.f64 #s(literal 1/720 binary64) (*.f64 im (*.f64 im im)))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
(* (pow im 3) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
1/24
#s(literal 1/24 binary64)
(+ 1/24 (* 1/720 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
(+ 1/24 (* 1/720 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
(+ 1/24 (* 1/720 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
(* 1/720 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/720 binary64))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
(* 1/720 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/720 binary64))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 im #s(literal 1/24 binary64))
(* 1/24 im)
(*.f64 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 (fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/12 binary64)) im) #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/360 im)
(*.f64 im #s(literal 1/360 binary64))
(* 1/12 im)
(*.f64 im #s(literal 1/12 binary64))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
(* im (+ 1/12 (* 1/360 (pow im 2))))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
(* 1/360 (pow im 3))
(*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
(* 1/360 (pow im 3))
(*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
(* (pow im 3) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(*.f64 im (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)))
1/12
#s(literal 1/12 binary64)
(+ 1/12 (* 1/360 (pow im 2)))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(+ 1/12 (* 1/360 (pow im 2)))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(+ 1/12 (* 1/360 (pow im 2)))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(* 1/360 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/360 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(* 1/360 (pow im 2))
(*.f64 (*.f64 im im) #s(literal 1/360 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(* (pow im 2) (+ 1/360 (* 1/12 (/ 1 (pow im 2)))))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 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 (fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/12 binary64)) im) #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))

rewrite551.0ms (4.8%)

Memory
18.6MiB live, 776.5MiB allocated
Algorithm
batch-egg-rewrite
Rules
6 318×lower-fma.f32
6 294×lower-fma.f64
5 028×lower-*.f32
5 002×lower-*.f64
4 008×lower-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062366
0108334
1420305
23106305
09685301
Stop Event
iter limit
node limit
iter limit
Counts
25 → 345
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
#s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 im im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(*.f64 re #s(literal -1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) im)
#s(approx (cos re) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 im (fma.f64 (*.f64 im 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))
(*.f64 im #s(literal 1/24 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
(*.f64 im #s(literal 1/360 binary64))
(*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64)))
(/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64)))
Outputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 im (*.f64 im (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))) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 (cos.f64 re) #s(approx (* 1 (cosh im)) (fma.f64 im (*.f64 im (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))) #s(literal 1 binary64))))
#s(approx (* 1 (cosh im)) (fma.f64 im (*.f64 im (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))) #s(literal 1 binary64)))
(+.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (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)))))
(+.f64 (*.f64 im (*.f64 im (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)))) #s(literal 1 binary64))
(+.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))) (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))))) (*.f64 im (*.f64 im #s(literal 1/2 binary64))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (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)))) (*.f64 im im)) (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 (*.f64 im im) (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)) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64))))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (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)))))) (/.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (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)))) (*.f64 im im)) (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))) (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (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 #s(literal 1 binary64) (*.f64 im (*.f64 im (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)))) #s(literal 1 binary64))
(fma.f64 im (*.f64 im (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))) #s(literal 1 binary64))
(fma.f64 im (*.f64 im (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))) (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 im (*.f64 (*.f64 im (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))) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 im (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) (*.f64 im im)) (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) (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)) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) (*.f64 (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)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) (*.f64 im (*.f64 im im)) (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (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)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (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)) (*.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im (*.f64 im im)) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (*.f64 im (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)))) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 im (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))) im #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) im) im (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))) im (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (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 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (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)) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64)) (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (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))) (*.f64 im (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)))) #s(literal -1 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (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)) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (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))))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (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)) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (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)))) (*.f64 im im)) (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))) (*.f64 im (*.f64 im (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)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (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 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (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)) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64)) (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (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))) (*.f64 im (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)))) #s(literal -1 binary64)))))
(/.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (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))) (*.f64 im (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)))) #s(literal -1 binary64)) (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (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)) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64))) (neg.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (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)))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (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)) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (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)))) (*.f64 im im)) (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))) (*.f64 im (*.f64 im (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))))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (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))) (*.f64 im (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)))) #s(literal -1 binary64))) (neg.f64 (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im (*.f64 im (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)))) (*.f64 im im)) (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)))) (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (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))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (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)))) (*.f64 im im)) (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 (*.f64 im im) (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)) #s(literal -1 binary64))) (*.f64 (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64)) (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (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)) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (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))))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (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))) (*.f64 im (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)))) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im (*.f64 im (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)))) (*.f64 im im)) (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))))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (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)))))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 (fma.f64 (*.f64 im 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)))) (pow.f64 (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))) (-.f64 (*.f64 (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64))) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))) (fma.f64 im (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64))))))
(/.f64 (+.f64 (pow.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))))) #s(literal 3 binary64)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/8 binary64)))) (fma.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))))) (-.f64 (*.f64 (*.f64 im (*.f64 im #s(literal 1/2 binary64))) (*.f64 im (*.f64 im #s(literal 1/2 binary64)))) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))))) (*.f64 im (*.f64 im #s(literal 1/2 binary64)))))))
(pow.f64 (/.f64 (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (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 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (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)) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64)) (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (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))) (*.f64 im (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)))) #s(literal -1 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (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)) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (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 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (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)))))))
(*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (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))) (*.f64 im (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)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) (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)) #s(literal -1 binary64))))
(exp.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)))
(pow.f64 im #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 im)) #s(literal 2 binary64))
(*.f64 im im)
(*.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(+.f64 #s(literal 1 binary64) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))
(+.f64 (*.f64 re (*.f64 re #s(literal -1/2 binary64))) #s(literal 1 binary64))
(-.f64 (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))) (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (-.f64 #s(literal 1 binary64) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))
(fma.f64 #s(literal 1 binary64) (*.f64 re (*.f64 re #s(literal -1/2 binary64))) #s(literal 1 binary64))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 re (*.f64 (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 (*.f64 re #s(literal -1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 (*.f64 re #s(literal -1/2 binary64)) (*.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 re (*.f64 re #s(literal -1/2 binary64))) #s(literal 1 binary64) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))) (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64))))
(/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))
(/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))) (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)))))
(/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64))) (neg.f64 (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)))) (-.f64 #s(literal 1 binary64) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))) (*.f64 (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re))))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(pow.f64 (/.f64 (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))) (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))
(*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))
(*.f64 re #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) re)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(+.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(-.f64 (/.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))) (/.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))))
(-.f64 (/.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (/.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(fma.f64 im (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 im (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im #s(approx (cos re) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im (*.f64 im #s(approx (cos re) #s(literal 1 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (*.f64 im #s(approx (cos re) #s(literal 1 binary64)))) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) im #s(approx (cos re) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))) im #s(approx (cos re) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))) (fma.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))))
(/.f64 (fma.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))))) (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))))
(/.f64 (fma.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))))) (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))) (fma.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))))))
(/.f64 (*.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))))) (neg.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))))) (neg.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))) (neg.f64 (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))))
(/.f64 (-.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))) (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))) (*.f64 (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))))) (*.f64 (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))))))) (neg.f64 (neg.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))))) (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))) (neg.f64 (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))
(pow.f64 (/.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))))) (fma.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64)))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (cos re) #s(literal 1 binary64))))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (-.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))))))))
(*.f64 (*.f64 (fma.f64 #s(approx (cos re) #s(literal 1 binary64)) (*.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 im #s(approx (cos re) #s(literal 1 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))) #s(approx (cos re) #s(literal 1 binary64)))))
(*.f64 im #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) im)
#s(approx (cos re) #s(literal 1 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))
(+.f64 #s(literal 1/2 binary64) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))
(+.f64 (*.f64 re (*.f64 re #s(literal -1/4 binary64))) #s(literal 1/2 binary64))
(-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) (/.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (-.f64 #s(literal 1/2 binary64) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))))
(fma.f64 re (*.f64 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))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re #s(literal -1/4 binary64)) re #s(literal 1/2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))) (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64)) (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64))))
(/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64)) (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))
(/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))) (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64)) (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)))))
(/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64))) (neg.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)))) (-.f64 #s(literal 1/2 binary64) (*.f64 re (*.f64 re #s(literal -1/4 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64))) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (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 (neg.f64 (neg.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re))))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))))
(pow.f64 (/.f64 (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))) (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64)) (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/64 binary64)) #s(literal 1/8 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal -1/2 binary64))))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(pow.f64 re #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 2 binary64))
(*.f64 re re)
(*.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))))
(+.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))))
(+.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im #s(literal 1/24 binary64)))
(-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64))))) (-.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im #s(literal 1/24 binary64)))) (/.f64 (*.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im #s(literal 1/24 binary64))) (-.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im #s(literal 1/24 binary64)))))
(fma.f64 im #s(literal 1/24 binary64) (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))))
(fma.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64))) (*.f64 im #s(literal 1/24 binary64)))
(fma.f64 (*.f64 im im) (*.f64 im #s(literal 1/720 binary64)) (*.f64 im #s(literal 1/24 binary64)))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im (*.f64 im im)) (*.f64 im #s(literal 1/24 binary64)))
(fma.f64 #s(literal 1/24 binary64) im (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))))
(fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/720 binary64) (*.f64 im #s(literal 1/24 binary64)))
(fma.f64 (*.f64 im (*.f64 im #s(literal 1/720 binary64))) im (*.f64 im #s(literal 1/24 binary64)))
(fma.f64 (*.f64 im #s(literal 1/720 binary64)) (*.f64 im im) (*.f64 im #s(literal 1/24 binary64)))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64))) (fma.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (-.f64 (*.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im #s(literal 1/24 binary64))) (*.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im #s(literal 1/24 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64))))) (*.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im #s(literal 1/24 binary64)))) (-.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im #s(literal 1/24 binary64))))
(/.f64 (*.f64 im (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64))) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))))
(/.f64 (*.f64 im (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64))) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64)) im) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))))
(/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64))) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64)))) (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (-.f64 (*.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im #s(literal 1/24 binary64))) (*.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im #s(literal 1/24 binary64)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64))))) (*.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im #s(literal 1/24 binary64))))) (neg.f64 (-.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im #s(literal 1/24 binary64)))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64)))) (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64)))) (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64)) im)) (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64)) im)) (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/13824 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64))))) (fma.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im #s(literal 1/24 binary64)) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64)))) (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64))))) (*.f64 (*.f64 im #s(literal 1/24 binary64)) (*.f64 im (*.f64 im (*.f64 im #s(literal 1/720 binary64))))))))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) im)
(+.f64 #s(literal 1/24 binary64) (*.f64 im (*.f64 im #s(literal 1/720 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal 1/720 binary64))) #s(literal 1/24 binary64))
(-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64)) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64))) (/.f64 #s(literal 1/576 binary64) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64))))
(-.f64 (/.f64 #s(literal 1/576 binary64) (-.f64 #s(literal 1/24 binary64) (*.f64 im (*.f64 im #s(literal 1/720 binary64))))) (/.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64)) (-.f64 #s(literal 1/24 binary64) (*.f64 im (*.f64 im #s(literal 1/720 binary64))))))
(fma.f64 im (*.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 (*.f64 im #s(literal 1/720 binary64)) im #s(literal 1/24 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64)) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64)) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64)) (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64)) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64)) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64)))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64)) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64))) (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64))) (neg.f64 (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64)) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64))) (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64))))
(/.f64 (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64))) (-.f64 #s(literal 1/24 binary64) (*.f64 im (*.f64 im #s(literal 1/720 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64)) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64))) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64)) #s(literal 1/576 binary64))) (*.f64 (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64)) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64)))) (neg.f64 (neg.f64 (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64)))) (neg.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 im (*.f64 im #s(literal 1/720 binary64))))))
(pow.f64 (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64)))) (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64)) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/373248000 binary64)) #s(literal 1/13824 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 im im) #s(literal 1/17280 binary64))))))
(*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/518400 binary64) #s(literal -1/576 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im #s(literal 1/720 binary64)) #s(literal -1/24 binary64))))
(*.f64 im #s(literal 1/24 binary64))
(*.f64 #s(literal 1/24 binary64) im)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))
(*.f64 im #s(literal 1/360 binary64))
(*.f64 #s(literal 1/360 binary64) im)
(+.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))
(+.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))) (/.f64 (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))) (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))))
(fma.f64 im #s(literal 1/12 binary64) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im im) (*.f64 im #s(literal 1/360 binary64)) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 (*.f64 im #s(literal 1/360 binary64)) (*.f64 im im) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 #s(literal 1/12 binary64) im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) im (*.f64 im #s(literal 1/12 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)))))
(/.f64 im (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))))
(/.f64 (neg.f64 im) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))))))
(/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))
(/.f64 (neg.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)))) (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/1728 binary64))) (fma.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (-.f64 (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))) (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64)))) (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64))))
(/.f64 (*.f64 im (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64))) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))
(/.f64 (*.f64 im #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))))
(/.f64 (*.f64 im (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)))) (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64)) im) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))
(/.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))))
(/.f64 (*.f64 (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) im) (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(/.f64 (neg.f64 (neg.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/1728 binary64)))) (neg.f64 (fma.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (-.f64 (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))) (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64))))) (neg.f64 (-.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im #s(literal 1/12 binary64)))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64)))) (neg.f64 (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (neg.f64 (*.f64 im #s(literal 1 binary64))) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))))
(/.f64 (neg.f64 (*.f64 im (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64)) im)) (neg.f64 (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) im)) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) im)) (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))))
(/.f64 (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/1728 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64)))) (fma.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im #s(literal 1/12 binary64)) (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64))) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (*.f64 (*.f64 im #s(literal 1/12 binary64)) (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))))))
(pow.f64 (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)))) #s(literal -1 binary64))
(*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(*.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) im))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) (/.f64 im (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) im)
(*.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(*.f64 (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal -1/1728 binary64))) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64))))
(*.f64 (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(*.f64 (/.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal -1/1728 binary64))) (/.f64 im (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64))))))
(*.f64 (/.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))))
(*.f64 (/.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (/.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))))
(*.f64 (/.f64 im (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal -1/1728 binary64))) (/.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64))))))
(*.f64 (/.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)))))
(*.f64 (/.f64 im (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64)))))
(*.f64 (/.f64 im (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal -1/20736 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64))))
(*.f64 (/.f64 im #s(literal -1 binary64)) (-.f64 (/.f64 #s(literal 0 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64)))) (/.f64 im (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64)))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal -1/20736 binary64)))) (/.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64))))
(*.f64 (/.f64 (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) #s(literal -1 binary64)) (/.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(+.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))) #s(literal -1 binary64)))
(-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))
(-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64)))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) (/.f64 #s(literal 1/144 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(-.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64)) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) (/.f64 (/.f64 #s(literal 1/20736 binary64) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))) (/.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64)) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)))) (/.f64 #s(literal 1/20736 binary64) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64)) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) (+.f64 #s(literal 1/144 binary64) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64))))) (/.f64 #s(literal -1/1728 binary64) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) (+.f64 #s(literal 1/144 binary64) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64))))))
(-.f64 (/.f64 #s(literal 1/144 binary64) (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))) (/.f64 (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64)))) (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))))
(fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal 1/12 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))
(fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64))
(fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))
(neg.f64 (/.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))))
(neg.f64 (-.f64 (/.f64 #s(literal 0 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))))))
(/.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))
(/.f64 (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64)) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64)) (+.f64 #s(literal 1/144 binary64) (-.f64 (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64)))) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64)) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) #s(literal 1 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal -1/20736 binary64)) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal -1/20736 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64))) (neg.f64 (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64))) (neg.f64 (+.f64 #s(literal 1/144 binary64) (-.f64 (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64)))) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64))) (neg.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal -1/20736 binary64))) (neg.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64)) #s(literal -1/1728 binary64)) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) (+.f64 #s(literal 1/144 binary64) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64)))))
(/.f64 (-.f64 #s(literal 1/144 binary64) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))))) (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64))))
(/.f64 (*.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))) (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal -1/20736 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64)))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) #s(literal 1/144 binary64))) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/144 binary64) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64)))))) (neg.f64 (-.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 im im) #s(literal 1/360 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64)) #s(literal -1/1728 binary64))) (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) (+.f64 #s(literal 1/144 binary64) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64)) #s(literal 1 binary64))) (neg.f64 (*.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal -1/20736 binary64)) #s(literal 1 binary64))) (neg.f64 (*.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))))) (neg.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))) (neg.f64 (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal -1/20736 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))) (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64))) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(*.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))))
(*.f64 (neg.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)))))
(*.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal 1/1728 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal 1/4320 binary64)))))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) (pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) #s(literal -1 binary64)))
(*.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))))
(*.f64 (/.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal -1/1728 binary64))) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64))))
(*.f64 (/.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal -1/1728 binary64))) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64))))))
(*.f64 (/.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))
(*.f64 (pow.f64 (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64)))))
(*.f64 (pow.f64 (/.f64 (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64)) (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal -1/20736 binary64))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64))))
(*.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64)) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)))))
(*.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1/2176782336000000 binary64) #s(literal -1/2985984 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal -1/1728 binary64))) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal 1/20736 binary64)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1/18662400 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64))))))
(*.f64 (/.f64 (fma.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/16796160000 binary64) #s(literal -1/20736 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1/46656000 binary64) #s(literal -1/1728 binary64))) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal 1/144 binary64)) (*.f64 (*.f64 im im) #s(literal -1/4320 binary64))))))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))

eval603.0ms (5.2%)

Memory
-10.4MiB live, 216.5MiB allocated
Compiler

Compiled 26 871 to 1 818 computations (93.2% saved)

prune156.0ms (1.3%)

Memory
26.6MiB live, 189.2MiB allocated
Pruning

36 alts after pruning (29 fresh and 7 done)

PrunedKeptTotal
New88215897
Fresh101424
Picked235
Done044
Total89436930
Accuracy
100.0%
Counts
930 → 36
Alt Table
Click to see full alt table
StatusAccuracyProgram
80.3%
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) #s(approx (exp im) (fma.f64 im (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))))))
64.1%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
63.4%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
80.3%
(*.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))))
92.9%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
54.8%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
60.7%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
60.4%
(*.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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64))))
41.6%
(*.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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
41.6%
(*.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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
60.4%
(*.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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
60.4%
(*.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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) im) #s(literal 2 binary64))))
53.1%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
13.4%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
58.2%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
40.6%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
49.4%
(*.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))))
58.1%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
57.5%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
55.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
35.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
89.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
55.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
26.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
56.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
55.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
55.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
41.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
39.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
36.5%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
32.2%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
34.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
32.2%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))))
34.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
7.8%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
32.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
Compiler

Compiled 2 060 to 651 computations (68.4% saved)

regimes140.0ms (1.2%)

Memory
-35.6MiB live, 184.7MiB allocated
Counts
60 → 1
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))))
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/12 binary64)) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im (*.f64 im (*.f64 im im))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) #s(approx (exp im) (fma.f64 im (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
Outputs
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
Calls

6 calls:

39.0ms
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
26.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
20.0ms
re
19.0ms
im
16.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
100.0%1(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
100.0%1(cos.f64 re)
100.0%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Compiler

Compiled 37 to 28 computations (24.3% saved)

regimes104.0ms (0.9%)

Memory
-3.8MiB live, 232.0MiB allocated
Counts
59 → 1
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))))
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/12 binary64)) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im (*.f64 im (*.f64 im im))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) #s(approx (exp im) (fma.f64 im (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(fma.f64 #s(approx (* 1/2 (exp (neg im))) (fma.f64 im (fma.f64 im #s(literal 1/4 binary64) #s(literal -1/2 binary64)) #s(literal 1/2 binary64))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 im #s(literal 3 binary64))))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (+.f64 im im)) #s(literal -1 binary64)))
Outputs
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
Calls

6 calls:

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

Compiled 37 to 28 computations (24.3% saved)

regimes92.0ms (0.8%)

Memory
20.5MiB live, 178.3MiB allocated
Counts
54 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))))
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/12 binary64)) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im (*.f64 im (*.f64 im im))) (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
Outputs
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
Calls

6 calls:

16.0ms
re
16.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
15.0ms
(cos.f64 re)
15.0ms
im
14.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
95.9%2re
98.0%3im
100.0%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
95.9%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
95.9%2(cos.f64 re)
92.9%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Compiler

Compiled 37 to 28 computations (24.3% saved)

regimes17.0ms (0.1%)

Memory
1.2MiB live, 39.5MiB allocated
Counts
51 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))))
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 im (*.f64 (*.f64 im im) #s(literal 1/12 binary64)) im) #s(literal 2 binary64))))
Outputs
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
Calls

1 calls:

14.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 13 to 10 computations (23.1% saved)

regimes19.0ms (0.2%)

Memory
-26.2MiB live, 22.9MiB allocated
Counts
49 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))))
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
Outputs
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #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) #s(literal 1 binary64)))
Calls

1 calls:

16.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 13 to 10 computations (23.1% saved)

regimes16.0ms (0.1%)

Memory
-9.1MiB live, 29.7MiB allocated
Counts
48 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))))
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
Calls

1 calls:

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

Compiled 13 to 10 computations (23.1% saved)

regimes14.0ms (0.1%)

Memory
30.7MiB live, 30.7MiB allocated
Counts
47 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))))
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
Calls

1 calls:

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

Compiled 13 to 10 computations (23.1% saved)

regimes84.0ms (0.7%)

Memory
-10.9MiB live, 184.4MiB allocated
Counts
46 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))))
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
Calls

6 calls:

16.0ms
re
15.0ms
(cos.f64 re)
14.0ms
im
13.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
12.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
85.2%2(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
73.9%2re
76.0%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
76.0%2(cos.f64 re)
85.2%2im
94.0%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 37 to 28 computations (24.3% saved)

regimes132.0ms (1.1%)

Memory
6.1MiB live, 164.6MiB allocated
Counts
45 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 re (*.f64 re #s(literal -1/1440 binary64)) #s(literal 1/48 binary64))) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 (*.f64 re (*.f64 re re)) (*.f64 (*.f64 re (*.f64 re re)) #s(literal -1/8 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 re #s(literal -1/2 binary64))))))))
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 im (fma.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/129600 binary64))) #s(literal -1/144 binary64))) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (/.f64 (*.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) im) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (*.f64 (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))) #s(literal -1 binary64)) #s(approx (cos re) #s(literal 1 binary64))) (fma.f64 im (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (*.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/4 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal -1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
Calls

6 calls:

40.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
36.0ms
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
14.0ms
re
13.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
13.0ms
im
Results
AccuracySegmentsBranch
63.4%2re
70.7%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
70.7%2(cos.f64 re)
60.7%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
60.7%1im
70.7%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 37 to 28 computations (24.3% saved)

regimes34.0ms (0.3%)

Memory
-3.8MiB live, 75.2MiB allocated
Counts
35 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (/.f64 (fma.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1/129600 binary64) #s(literal -1/144 binary64)) (fma.f64 im (*.f64 im #s(literal 1/360 binary64)) #s(literal -1/12 binary64)))) im) #s(literal 2 binary64))))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
Calls

3 calls:

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

Compiled 23 to 18 computations (21.7% saved)

regimes32.0ms (0.3%)

Memory
-0.4MiB live, 73.9MiB allocated
Counts
32 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 re (*.f64 re #s(literal -1/4 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) #s(approx (* im (+ (* (* im 1/360) im) 1/12)) (*.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (*.f64 im im) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64)) #s(literal 1 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 (fma.f64 (*.f64 im im) (*.f64 im (+.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal 1/360 binary64)) #s(literal -1/12 binary64))) 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 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im (*.f64 im im)) #s(literal 1/360 binary64) (*.f64 im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
Calls

3 calls:

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

Compiled 23 to 18 computations (21.7% saved)

regimes22.0ms (0.2%)

Memory
19.6MiB live, 58.1MiB allocated
Counts
21 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im #s(literal 1/360 binary64)) im #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im #s(approx (+ (* (* im im) 1/360) 1/12) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))
Calls

3 calls:

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

Compiled 23 to 18 computations (21.7% saved)

regimes21.0ms (0.2%)

Memory
-15.8MiB live, 36.4MiB allocated
Counts
16 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
Calls

3 calls:

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

Compiled 23 to 18 computations (21.7% saved)

regimes16.0ms (0.1%)

Memory
0.8MiB live, 40.1MiB allocated
Counts
14 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im #s(literal 1/24 binary64))) im (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)))))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
Calls

3 calls:

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

Compiled 23 to 18 computations (21.7% saved)

regimes14.0ms (0.1%)

Memory
-1.9MiB live, 37.7MiB allocated
Counts
12 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) #s(approx (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1) (*.f64 im (*.f64 im (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(approx (+ (* im (* im 1/24)) 1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) im) (*.f64 im (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(approx (cos re) #s(literal 1 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))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
Calls

3 calls:

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

Compiled 23 to 18 computations (21.7% saved)

regimes19.0ms (0.2%)

Memory
13.8MiB live, 53.1MiB allocated
Counts
7 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (+ (* (* (cos re) im) (* im (+ (* im (* im 1/24)) 1/2))) (cos re)) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
Calls

6 calls:

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

Compiled 37 to 28 computations (24.3% saved)

regimes17.0ms (0.1%)

Memory
-33.8MiB live, 46.0MiB allocated
Counts
5 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
Calls

6 calls:

4.0ms
(cos.f64 re)
2.0ms
im
2.0ms
re
2.0ms
(*.f64 #s(literal 1/2 binary64) (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
49.4%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
52.8%2im
52.9%2re
55.7%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
58.0%3(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
58.0%3(cos.f64 re)
Compiler

Compiled 37 to 28 computations (24.3% saved)

regimes7.0ms (0.1%)

Memory
18.0MiB live, 18.0MiB allocated
Counts
4 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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))))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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
55.7%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
55.7%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
55.7%2(cos.f64 re)
Compiler

Compiled 23 to 18 computations (21.7% saved)

regimes12.0ms (0.1%)

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

6 calls:

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

Compiled 37 to 28 computations (24.3% saved)

regimes5.0ms (0%)

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

3 calls:

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

Compiled 23 to 18 computations (21.7% saved)

regimes9.0ms (0.1%)

Memory
-10.5MiB live, 28.9MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

6 calls:

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

Compiled 37 to 28 computations (24.3% saved)

bsearch1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999600086682
1.0
0.0ms
-inf
-0.9949246394224251
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999600086682
1.0
0.0ms
-inf
-0.9949246394224251
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999600086682
1.0
0.0ms
-inf
-0.9949246394224251
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

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

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999600086682
1.0
0.0ms
-inf
-0.9949246394224251
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999600086682
1.0
0.0ms
-inf
-0.9949246394224251
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch2.0ms (0%)

Memory
-39.7MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999600086682
0.9999999955166208
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.022793308474967182
0.06071171871613101
Compiler

Compiled 16 to 15 computations (6.3% saved)

simplify18.0ms (0.2%)

Memory
12.9MiB live, 52.5MiB allocated
Algorithm
egg-herbie
Rules
58×*-commutative_binary64
+-commutative_binary64
*-lft-identity_binary64
sub-neg_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01481342
11841342
21861342
31871342
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 (*.f64 #s(literal 1 binary64) (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 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #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 4503599447265549/4503599627370496 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 (*.f64 #s(literal 1 binary64) (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 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #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 4503599447265549/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))) (*.f64 (*.f64 #s(literal 1 binary64) (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 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #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 4503599447265549/4503599627370496 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) #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/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 4503599447265549/4503599627370496 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) #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/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 4503599447265549/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 (*.f64 #s(literal 1 binary64) (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/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 4503599447265549/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))) (if (<=.f64 (cos.f64 re) #s(literal 9007199074597007/9007199254740992 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
Outputs
(fma.f64 (*.f64 #s(literal 1/2 binary64) (exp.f64 (neg.f64 im))) (cos.f64 re) (*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (cos.f64 re) (cosh.f64 im))
(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 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #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 4503599447265549/4503599627370496 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 (*.f64 #s(literal 1 binary64) (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 re (*.f64 re #s(literal -1/2 binary64)) #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 4503599447265549/4503599627370496 binary64)) (*.f64 (cos.f64 re) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64)) #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 -inf.0 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #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 4503599447265549/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))) (*.f64 (*.f64 #s(literal 1 binary64) (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 re (*.f64 re #s(literal -1/2 binary64)) #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 4503599447265549/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #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 -inf.0 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #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 4503599447265549/4503599627370496 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) #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 re (*.f64 re #s(literal -1/2 binary64)) #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 4503599447265549/4503599627370496 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 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 4503599447265549/4503599627370496 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) #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/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 4503599447265549/4503599627370496 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 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 4503599447265549/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 (*.f64 #s(literal 1 binary64) (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/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 4503599447265549/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (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 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 4503599447265549/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 -inf.0 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 4503599447265549/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) 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 (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64))) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))))) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)) #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im (fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/360 binary64) #s(literal 1/12 binary64))) im) #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 im im) (fma.f64 im (*.f64 im #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* (cos re) (+ (* (* im im) (+ (* im (* im 1/24)) 1/2)) 1)) (fma.f64 im (*.f64 im (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))) (if (<=.f64 (cos.f64 re) #s(literal 9007199074597007/9007199254740992 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))) (if (<=.f64 (cos.f64 re) #s(literal 9007199074597007/9007199254740992 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 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)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 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))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/288230376151711744 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* re (* re -1/2)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 re re))))) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))

soundness1.8s (15.2%)

Memory
25.1MiB live, 1 259.3MiB allocated
Rules
25 308×lower-fma.f64
25 308×lower-fma.f32
17 830×lower-fma.f64
17 830×lower-fma.f32
16 382×lower-fma.f64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02873407
18973145
226033062
359383005
469092997
081442798
0119655
1346623
21079613
33299596
47370596
57975596
08043556
02203606
16843465
219763373
350153326
461453326
080713109
02593438
17943177
224953094
358503033
473913033
080572808
01028
01728
14724
228522
3248522
0903422
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 1 705 to 668 computations (60.8% saved)

preprocess120.0ms (1%)

Memory
8.6MiB live, 240.5MiB allocated
Remove

(abs re)

(abs im)

Compiler

Compiled 1 892 to 316 computations (83.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...