math.cos on complex, real part

Time bar (total: 9.1s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze1.0ms (0%)

Memory
0.4MiB live, 0.4MiB 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.7s (18.6%)

Memory
10.8MiB live, 1 413.4MiB allocated
Samples
1.3s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 970.0ms
ival-cos: 354.0ms (36.5% of total)
ival-exp: 233.0ms (24% of total)
ival-mult: 161.0ms (16.6% of total)
ival-add: 108.0ms (11.1% of total)
ival-neg: 98.0ms (10.1% of total)
ival-true: 7.0ms (0.7% of total)
exact: 6.0ms (0.6% of total)
ival-assert: 3.0ms (0.3% of total)
Bogosity

explain165.0ms (1.8%)

Memory
20.9MiB live, 366.5MiB 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
84.0ms512×0valid
Compiler

Compiled 114 to 44 computations (61.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 65.0ms
ival-cos: 45.0ms (69% of total)
ival-exp: 8.0ms (12.3% of total)
ival-mult: 7.0ms (10.7% of total)
ival-add: 3.0ms (4.6% of total)
ival-neg: 2.0ms (3.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess59.0ms (0.7%)

Memory
21.6MiB live, 59.1MiB allocated
Algorithm
egg-herbie
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 (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (cos.f64 re))
Symmetry

(abs im)

(abs re)

Compiler

Compiled 11 to 10 computations (9.1% saved)

eval0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0%)

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

Compiled 11 to 10 computations (9.1% saved)

simplify10.0ms (0.1%)

Memory
-28.5MiB live, 8.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(exp.f64 (neg.f64 im))
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))
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 (fma.f64 (exp.f64 im) #s(literal 1/2 binary64) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (cos.f64 re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(cos.f64 re)
re
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)

localize196.0ms (2.2%)

Memory
-117.2MiB live, 54.9MiB allocated
Localize:

Found 4 expressions of interest:

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

Compiled 68 to 22 computations (67.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 177.0ms
ival-neg: 161.0ms (91.1% of total)
ival-cos: 7.0ms (4% of total)
ival-exp: 4.0ms (2.3% of total)
ival-mult: 3.0ms (1.7% of total)
ival-add: 1.0ms (0.6% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series30.0ms (0.3%)

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

6 calls:

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

simplify257.0ms (2.8%)

Memory
37.1MiB live, 344.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0119655
1346623
21071613
33276596
47351596
57956596
08023556
Stop Event
iter limit
node limit
Counts
84 → 84
Calls
Call 1
Inputs
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (+ (exp im) (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))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(cos re)
(cos re)
(cos re)
(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))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(cos re)
(cos re)
(cos re)
(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)))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
1
(+ 1 (* -1 im))
(+ 1 (* im (- (* 1/2 im) 1)))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
1
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(exp (neg im))
(exp (neg im))
(exp (neg 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)))))
(exp im)
(exp im)
(exp im)
(exp im)
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(exp (* -1 im))
(exp (* -1 im))
(exp (* -1 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 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(exp im)
(exp im)
(exp im)
(exp im)
Outputs
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 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(* 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))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(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 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 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))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(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 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
2
#s(literal 2 binary64)
(+ 2 (pow im 2))
(fma.f64 im im #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) (fma.f64 im im #s(literal 2 binary64)))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/360 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) (fma.f64 im im #s(literal 2 binary64))))
1
#s(literal 1 binary64)
(+ 1 (* -1 im))
(-.f64 #s(literal 1 binary64) im)
(+ 1 (* im (- (* 1/2 im) 1)))
(fma.f64 (fma.f64 im #s(literal 1/2 binary64) #s(literal -1 binary64)) im #s(literal 1 binary64))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) im #s(literal 1/2 binary64)) im #s(literal -1 binary64)) im #s(literal 1 binary64))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 (*.f64 im #s(literal 1/2 binary64)) im #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im #s(literal 1/2 binary64)) im (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/24 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 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im #s(literal 1/2 binary64)) im #s(literal 1 binary64))))
1
#s(literal 1 binary64)
(+ 1 im)
(+.f64 im #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* 1/2 im))))
(fma.f64 (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) im #s(literal 1/2 binary64)) im #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.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 (neg 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 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 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 (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp (* -1 im))
(exp.f64 (neg.f64 im))
(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/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)

rewrite172.0ms (1.9%)

Memory
0.3MiB live, 353.0MiB allocated
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 #s(literal 1/2 binary64) (cos.f64 re))
(cos.f64 re)
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(exp.f64 im)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval68.0ms (0.7%)

Memory
2.5MiB live, 81.5MiB allocated
Compiler

Compiled 7 803 to 1 050 computations (86.5% saved)

prune9.0ms (0.1%)

Memory
-8.5MiB live, 28.8MiB allocated
Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New3564360
Fresh000
Picked101
Done000
Total3574361
Accuracy
100.0%
Counts
361 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
100.0%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
76.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))))
51.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
Compiler

Compiled 34 to 29 computations (14.7% saved)

simplify11.0ms (0.1%)

Memory
23.5MiB live, 23.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
cost-diff0
(cos.f64 re)
cost-diff0
(exp.f64 im)
cost-diff0
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
cost-diff14208
(fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
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 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
(cos.f64 re)
cost-diff0
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
026112
04099
17799
213993
319293
424293
526993
629293
734293
835593
935593
035593
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(cos.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))
#s(literal 1/2 binary64)
(cos.f64 re)
re
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
#s(literal 1 binary64)
(cosh.f64 im)
im
(cos.f64 re)
re
(fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
#s(literal 1/2 binary64)
(exp.f64 im)
im
(cos.f64 re)
re
(*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))
(*.f64 (exp.f64 im) #s(literal 1/2 binary64))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(cos.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(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(cos.f64 re)
re
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(cosh.f64 im)
#s(literal 1 binary64)
(cosh.f64 im)
im
(cos.f64 re)
re
(fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(*.f64 (cosh.f64 im) (cos.f64 re))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
#s(literal 1/2 binary64)
(exp.f64 im)
im
(cos.f64 re)
re
(*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))
(*.f64 (exp.f64 im) #s(literal 1/2 binary64))

localize108.0ms (1.2%)

Memory
-69.8MiB live, 141.2MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0
(exp.f64 im)
accuracy0
(cos.f64 re)
accuracy0.010097509768442016
(*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))
accuracy0.01953125
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
accuracy0
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
accuracy0
(cosh.f64 im)
accuracy0
(cos.f64 re)
accuracy0.00390625
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
accuracy0
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
accuracy0
(cos.f64 re)
accuracy0.00390625
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
accuracy15.358170754787526
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy0
(cos.f64 re)
accuracy31.382483716602106
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
Samples
84.0ms256×0valid
Compiler

Compiled 192 to 43 computations (77.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 71.0ms
ival-mult: 31.0ms (43.7% of total)
exact: 17.0ms (24% of total)
ival-cos: 7.0ms (9.9% of total)
ival-exp: 5.0ms (7.1% of total)
ival-add: 4.0ms (5.6% of total)
ival-cosh: 3.0ms (4.2% of total)
ival-div: 2.0ms (2.8% of total)
ival-neg: 1.0ms (1.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series26.0ms (0.3%)

Memory
12.4MiB live, 49.6MiB allocated
Counts
12 → 204
Calls
Call 1
Inputs
#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())
#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())
#s(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)))) (patch (*.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)))) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())
#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())
#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())
#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())
#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())
#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())
Outputs
#s(alt (* 1/2 (+ (exp im) (exp (neg im)))) (taylor 0 re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im))))) (taylor 0 re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(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)))))))) (taylor 0 re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(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))))))))) (taylor 0 re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1/2 (pow re 2))) (taylor 0 re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2))) (taylor 0 re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2))) (taylor 0 re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (exp (neg im)))) (taylor 0 re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im))))) (taylor 0 re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(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)))))))) (taylor 0 re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(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))))))))) (taylor 0 re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* -1/4 (pow re 2))) (taylor 0 re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4))) (taylor 0 re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4))) (taylor 0 re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor 0 re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im))))) (taylor 0 re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(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)))))))) (taylor 0 re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(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))))))))) (taylor 0 re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (exp im)) (* 1/2 (/ 1 (exp im)))) (taylor 0 re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (exp im)) (+ (* 1/2 (/ 1 (exp im))) (* (pow re 2) (- (* -1/4 (exp im)) (* 1/4 (/ 1 (exp im))))))) (taylor 0 re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (exp im)) (+ (* 1/2 (/ 1 (exp im))) (* (pow re 2) (- (+ (* -1/4 (exp im)) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (/ 1 (exp im)))))) (* 1/4 (/ 1 (exp im))))))) (taylor 0 re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (exp im)) (+ (* 1/2 (/ 1 (exp im))) (* (pow re 2) (- (+ (* -1/4 (exp im)) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (/ 1 (exp im))) (* (pow re 2) (- (* -1/1440 (exp im)) (* 1/1440 (/ 1 (exp im))))))))) (* 1/4 (/ 1 (exp im))))))) (taylor 0 re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (exp im)) (taylor 0 re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/4 (* (pow re 2) (exp im))) (* 1/2 (exp im))) (taylor 0 re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (exp im)) (* (pow re 2) (+ (* -1/4 (exp im)) (* 1/48 (* (pow re 2) (exp im)))))) (taylor 0 re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (exp im)) (* (pow re 2) (+ (* -1/4 (exp im)) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (exp im))) (* 1/48 (exp im))))))) (taylor 0 re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor inf re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor inf re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor inf re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor inf re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor inf re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor inf re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor inf re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor inf re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor inf re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor inf re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor inf re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor inf re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor -inf re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor -inf re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor -inf re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor -inf re) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor -inf re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor -inf re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor -inf re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor -inf re) (#s(alt (cos.f64 re) (patch (cos.f64 re) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor -inf re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor -inf re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor -inf re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor -inf re) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor -inf re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor -inf re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor -inf re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor -inf re) (#s(alt (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (patch (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor -inf re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor -inf re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor -inf re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor -inf re) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor 0 im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re)))) (taylor 0 im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re))))) (taylor 0 im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re))))))) (taylor 0 im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor 0 im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re)))) (taylor 0 im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re))))) (taylor 0 im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re))))))) (taylor 0 im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt 2 (taylor 0 im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 2 (pow im 2)) (taylor 0 im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2))))) (taylor 0 im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2))))))) (taylor 0 im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (pow im 2))) (taylor 0 im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (taylor 0 im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (taylor 0 im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor 0 im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* 1/2 (* (pow im 2) (cos re)))) (taylor 0 im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re))))) (taylor 0 im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re))))))) (taylor 0 im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (pow im 2))) (taylor 0 im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2))))) (taylor 0 im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (taylor 0 im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor 0 im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re))))) (taylor 0 im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* -1/2 (+ (* -1 (cos re)) (* 1/2 (cos re)))) (* 1/4 (cos re)))))))) (taylor 0 im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* -1/2 (+ (* -1 (cos re)) (* 1/2 (cos re)))) (+ (* 1/4 (cos re)) (* im (+ (* -1/2 (+ (* -1 (+ (* -1 (cos re)) (* 1/2 (cos re)))) (+ (* -1/2 (cos re)) (* 1/6 (cos re))))) (* 1/12 (cos re))))))))))) (taylor 0 im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* -1/2 im)) (taylor 0 im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* im (- (* 1/4 im) 1/2))) (taylor 0 im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* im (- (* im (+ 1/4 (* -1/12 im))) 1/2))) (taylor 0 im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (+ 1 im) (taylor 0 im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* im (+ 1 (* 1/2 im)))) (taylor 0 im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im)))))) (taylor 0 im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor 0 im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))) (taylor 0 im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (cos re)) (* im (+ (* 1/4 (* im (cos re))) (* 1/2 (cos re))))) (taylor 0 im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* 1/12 (* im (cos re))) (* 1/4 (cos re))))))) (taylor 0 im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (neg im))))) (taylor inf im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (+ (exp im) (exp (neg im))) (taylor inf im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (exp im) (exp (neg im))) (taylor inf im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (exp im) (exp (neg im))) (taylor inf im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (exp im) (exp (neg im))) (taylor inf im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor inf im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor inf im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor inf im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor inf im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor inf im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor inf im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor inf im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor inf im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 (exp im)) (taylor inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 (exp im)) (taylor inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 (exp im)) (taylor inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 (exp im)) (taylor inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (exp im) (taylor inf im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (exp im) (taylor inf im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (exp im) (taylor inf im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (exp im) (taylor inf im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor inf im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor inf im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor inf im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor inf im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im))))) (taylor -inf im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im))))) (taylor -inf im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im))))) (taylor -inf im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im))))) (taylor -inf im) (#s(alt #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (patch #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im))))) (taylor -inf im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im))))) (taylor -inf im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im))))) (taylor -inf im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im))))) (taylor -inf im) (#s(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)))) (patch (*.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)))) #<representation binary64>) () ())) ())
#s(alt (+ (exp im) (exp (* -1 im))) (taylor -inf im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (exp im) (exp (* -1 im))) (taylor -inf im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (exp im) (exp (* -1 im))) (taylor -inf im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (exp im) (exp (* -1 im))) (taylor -inf im) (#s(alt #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (patch #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor -inf im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor -inf im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor -inf im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor -inf im) (#s(alt (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (patch (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf im) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor -inf im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor -inf im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor -inf im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor -inf im) (#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor -inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor -inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor -inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im)))) (taylor -inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 (exp im)) (taylor -inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 (exp im)) (taylor -inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 (exp im)) (taylor -inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 (exp im)) (taylor -inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (patch (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) #<representation binary64>) () ())) ())
#s(alt (exp im) (taylor -inf im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (exp im) (taylor -inf im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (exp im) (taylor -inf im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (exp im) (taylor -inf im) (#s(alt (exp.f64 im) (patch (exp.f64 im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor -inf im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor -inf im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor -inf im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (exp im))) (taylor -inf im) (#s(alt (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (patch (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify246.0ms (2.7%)

Memory
-8.9MiB live, 333.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02452118
17711982
221991953
352361911
085441816
Stop Event
iter limit
node limit
Counts
204 → 204
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
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(+ (* 1/2 (exp im)) (* 1/2 (/ 1 (exp im))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (/ 1 (exp im))) (* (pow re 2) (- (* -1/4 (exp im)) (* 1/4 (/ 1 (exp im)))))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (/ 1 (exp im))) (* (pow re 2) (- (+ (* -1/4 (exp im)) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (/ 1 (exp im)))))) (* 1/4 (/ 1 (exp im)))))))
(+ (* 1/2 (exp im)) (+ (* 1/2 (/ 1 (exp im))) (* (pow re 2) (- (+ (* -1/4 (exp im)) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (/ 1 (exp im))) (* (pow re 2) (- (* -1/1440 (exp im)) (* 1/1440 (/ 1 (exp im))))))))) (* 1/4 (/ 1 (exp im)))))))
(* 1/2 (exp im))
(+ (* -1/4 (* (pow re 2) (exp im))) (* 1/2 (exp im)))
(+ (* 1/2 (exp im)) (* (pow re 2) (+ (* -1/4 (exp im)) (* 1/48 (* (pow re 2) (exp im))))))
(+ (* 1/2 (exp im)) (* (pow re 2) (+ (* -1/4 (exp im)) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (exp im))) (* 1/48 (exp 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)
(cos re)
(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))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (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/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp 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)
(cos re)
(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))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (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/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (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)))))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(cos re)
(+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* -1/2 (+ (* -1 (cos re)) (* 1/2 (cos re)))) (* 1/4 (cos re))))))))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* -1/2 (+ (* -1 (cos re)) (* 1/2 (cos re)))) (+ (* 1/4 (cos re)) (* im (+ (* -1/2 (+ (* -1 (+ (* -1 (cos re)) (* 1/2 (cos re)))) (+ (* -1/2 (cos re)) (* 1/6 (cos re))))) (* 1/12 (cos re)))))))))))
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
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(* 1/2 (cos re))
(+ (* 1/2 (cos re)) (* 1/2 (* im (cos re))))
(+ (* 1/2 (cos re)) (* im (+ (* 1/4 (* im (cos re))) (* 1/2 (cos re)))))
(+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* 1/12 (* im (cos re))) (* 1/4 (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 (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)))))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg 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 (* (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/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(/ 1/2 (exp im))
(/ 1/2 (exp im))
(/ 1/2 (exp im))
(/ 1/2 (exp im))
(exp im)
(exp im)
(exp im)
(exp im)
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp 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 (* (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)))))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 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 (* (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/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(/ 1/2 (exp im))
(/ 1/2 (exp im))
(/ 1/2 (exp im))
(/ 1/2 (exp im))
(exp im)
(exp im)
(exp im)
(exp im)
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp im)))
(* 1/2 (* (cos re) (exp im)))
Outputs
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #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 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(+ (* 1/2 (exp im)) (* 1/2 (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* 1/2 (exp im)) (+ (* 1/2 (/ 1 (exp im))) (* (pow re 2) (- (* -1/4 (exp im)) (* 1/4 (/ 1 (exp im)))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (exp im)) (+ (* 1/2 (/ 1 (exp im))) (* (pow re 2) (- (+ (* -1/4 (exp im)) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (/ 1 (exp im)))))) (* 1/4 (/ 1 (exp im)))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(+ (* 1/2 (exp im)) (+ (* 1/2 (/ 1 (exp im))) (* (pow re 2) (- (+ (* -1/4 (exp im)) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (/ 1 (exp im))) (* (pow re 2) (- (* -1/1440 (exp im)) (* 1/1440 (/ 1 (exp im))))))))) (* 1/4 (/ 1 (exp im)))))))
(fma.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(* 1/2 (exp im))
(*.f64 (exp.f64 im) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (exp im))) (* 1/2 (exp im)))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (exp.f64 im))
(+ (* 1/2 (exp im)) (* (pow re 2) (+ (* -1/4 (exp im)) (* 1/48 (* (pow re 2) (exp im))))))
(*.f64 (exp.f64 im) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(+ (* 1/2 (exp im)) (* (pow re 2) (+ (* -1/4 (exp im)) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (exp im))) (* 1/48 (exp im)))))))
(fma.f64 (*.f64 (exp.f64 im) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (exp.f64 im) #s(literal 1/2 binary64)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(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 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 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) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(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 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 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) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re))
2
#s(literal 2 binary64)
(+ 2 (pow im 2))
(fma.f64 im im #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) (fma.f64 im im #s(literal 2 binary64)))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (fma.f64 im im #s(literal 2 binary64)))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (pow im 2)))
(fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(cos re)
(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)) (* im (+ (* -1/2 (+ (* -1 (cos re)) (* 1/2 (cos re)))) (* 1/4 (cos re))))))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* -1/2 (+ (* -1 (cos re)) (* 1/2 (cos re)))) (+ (* 1/4 (cos re)) (* im (+ (* -1/2 (+ (* -1 (+ (* -1 (cos re)) (* 1/2 (cos re)))) (+ (* -1/2 (cos re)) (* 1/6 (cos re))))) (* 1/12 (cos re)))))))))))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (cos.f64 re))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/2 im))
(fma.f64 #s(literal -1/2 binary64) im #s(literal 1/2 binary64))
(+ 1/2 (* im (- (* 1/4 im) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/4 binary64) im #s(literal -1/2 binary64)) im #s(literal 1/2 binary64))
(+ 1/2 (* im (- (* im (+ 1/4 (* -1/12 im))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/12 binary64) im #s(literal 1/4 binary64)) im #s(literal -1/2 binary64)) im #s(literal 1/2 binary64))
1
#s(literal 1 binary64)
(+ 1 im)
(+.f64 #s(literal 1 binary64) im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(fma.f64 (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) im #s(literal 1/2 binary64)) im #s(literal 1 binary64)) im #s(literal 1 binary64))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(+ (* 1/2 (cos re)) (* 1/2 (* im (cos re))))
(*.f64 (fma.f64 im #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (cos.f64 re))
(+ (* 1/2 (cos re)) (* im (+ (* 1/4 (* im (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (-.f64 (*.f64 im (fma.f64 #s(literal 1/4 binary64) im #s(literal 1/2 binary64))) #s(literal -1/2 binary64)))
(+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* 1/12 (* im (cos re))) (* 1/4 (cos re)))))))
(fma.f64 (*.f64 (cos.f64 re) (-.f64 (*.f64 im (fma.f64 #s(literal 1/12 binary64) im #s(literal 1/4 binary64))) #s(literal -1/2 binary64))) im (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/ 1/2 (exp im))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
(/ 1/2 (exp im))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
(/ 1/2 (exp im))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
(/ 1/2 (exp im))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (/ (cos re) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/ 1/2 (exp im))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
(/ 1/2 (exp im))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
(/ 1/2 (exp im))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
(/ 1/2 (exp im))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(exp im)
(exp.f64 im)
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))
(* 1/2 (* (cos re) (exp im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))

rewrite235.0ms (2.6%)

Memory
37.1MiB live, 357.2MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02687
04074
112464
271164
3754964
0801264
Stop Event
iter limit
node limit
iter limit
Counts
12 → 592
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(cos.f64 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))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(cosh.f64 im)
(fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(/.f64 #s(literal 1/2 binary64) (exp.f64 im))
(exp.f64 im)
(*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval144.0ms (1.6%)

Memory
-10.1MiB live, 257.4MiB allocated
Compiler

Compiled 19 011 to 1 286 computations (93.2% saved)

prune30.0ms (0.3%)

Memory
11.4MiB live, 99.9MiB allocated
Pruning

14 alts after pruning (12 fresh and 2 done)

PrunedKeptTotal
New86512877
Fresh000
Picked224
Done000
Total86714881
Accuracy
100.0%
Counts
881 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
60.8%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
76.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))))
94.0%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
89.8%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
45.7%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
43.9%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
44.3%
(*.f64 #s(approx (* 1/2 (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))))
42.8%
(*.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))))
94.0%
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
51.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
33.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
32.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
29.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))))
25.5%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
Compiler

Compiled 347 to 263 computations (24.2% saved)

simplify168.0ms (1.9%)

Memory
-24.7MiB live, 184.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
cost-diff0
(fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
cost-diff0
#s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
cost-diff0
(*.f64 re re)
cost-diff0
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
cost-diff0
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
cost-diff0
(fma.f64 im im #s(literal 2 binary64))
cost-diff0
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
cost-diff0
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
cost-diff0
#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
(cos.f64 re)
cost-diff0
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
cost-diff0
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
cost-diff6400
(fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040300
062298
1122298
2240292
3496292
41249292
52744292
65629292
75849292
86275292
96519292
106821292
117283292
08119290
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
(fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(cos.f64 re)
re
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
#s(literal 1/720 binary64)
(*.f64 im im)
im
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(approx (* (* 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)
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
re
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
#s(literal 1/48 binary64)
(*.f64 re re)
re
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
Outputs
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1 (cosh im)) (cos re)) (*.f64 (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)) (cos.f64 re)))
(fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re))
(*.f64 (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (cos.f64 re))
(cos.f64 re)
re
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
#s(literal 1/720 binary64)
(*.f64 im im)
im
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (cos re) #s(literal 1 binary64)))
#s(approx (cos re) #s(literal 1 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))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(*.f64 re re)
re
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
#s(literal 1/48 binary64)
(*.f64 re re)
re
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)

localize148.0ms (1.6%)

Memory
14.7MiB live, 210.3MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.05859375
(fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
accuracy0.09375
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
accuracy15.358170754787526
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy34.41579819028602
#s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
accuracy0.00390625
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
accuracy0.006191259768442017
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
accuracy15.358170754787526
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy34.32871042761316
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
accuracy0
(fma.f64 im im #s(literal 2 binary64))
accuracy0.00390625
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
accuracy15.358170754787526
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy31.261082190187782
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
accuracy31.26146267283205
#s(approx (cos re) #s(literal 1 binary64))
accuracy31.382483716602106
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
accuracy0.037441259768442016
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
accuracy0.04296875
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
accuracy0.3034941018694908
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
accuracy3.8130366293757367
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
Samples
120.0ms256×0valid
Compiler

Compiled 435 to 67 computations (84.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 89.0ms
ival-mult: 31.0ms (34.8% of total)
ival-neg: 23.0ms (25.8% of total)
const: 10.0ms (11.2% of total)
ival-add: 9.0ms (10.1% of total)
ival-cos: 7.0ms (7.9% of total)
ival-exp: 4.0ms (4.5% of total)
ival-cosh: 4.0ms (4.5% of total)
exact: 1.0ms (1.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series31.0ms (0.3%)

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

6 calls:

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

simplify182.0ms (2%)

Memory
2.2MiB live, 229.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02213893
17003718
222773596
368143505
479613505
081443268
Stop Event
iter limit
node limit
Counts
324 → 324
Calls
Call 1
Inputs
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))) (* (pow re 2) (- (* -1/2 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) 1/2))))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))) (* (pow re 2) (- (+ (* -1/2 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (* (pow re 2) (+ 1/24 (* 1/24 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))) 1/2))))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))) (* (pow re 2) (- (+ (* -1/2 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (* (pow re 2) (+ 1/24 (+ (* 1/24 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (* (pow re 2) (- (* -1/720 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) 1/720)))))) 1/2))))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
(+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))
(+ 1/2 (+ (* -1/2 (* (pow re 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(+ 1/2 (+ (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))) (* 1/24 (* (pow re 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))))
(+ 1/2 (+ (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (* 1/24 (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))))))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (+ (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
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* -1/4 (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
(+ 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
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
-1/4
(- (* 1/48 (pow re 2)) 1/4)
(- (* 1/48 (pow re 2)) 1/4)
(- (* 1/48 (pow re 2)) 1/4)
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(* 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)))))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(cos re)
(cos re)
(cos re)
(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)))))
(cos re)
(cos re)
(cos re)
(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))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (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))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* -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)
(* 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))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/48 (pow re 4))
(* (pow re 4) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(* 1/48 (pow re 2))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(* 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)))))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(cos re)
(cos re)
(cos re)
(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)))))
(cos re)
(cos re)
(cos re)
(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))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (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))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* -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)
(* 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))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/2 (cos re))
(* 1/48 (pow re 4))
(* (pow re 4) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(* 1/48 (pow re 2))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(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))
(+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))
(+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))
(+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
2
(+ 2 (pow im 2))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
2
(+ 2 (pow im 2))
(+ 2 (pow im 2))
(+ 2 (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/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
1/24
(+ 1/24 (* 1/720 (pow im 2)))
(+ 1/24 (* 1/720 (pow im 2)))
(+ 1/24 (* 1/720 (pow im 2)))
1/2
(+ 1/2 (* 1/24 (pow im 2)))
(+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))
(+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))
(* 1/720 (* (pow im 6) (cos re)))
(* (pow im 6) (+ (* 1/720 (cos re)) (* 1/24 (/ (cos re) (pow im 2)))))
(* (pow im 6) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(* (pow im 6) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (+ (* 1/2 (/ (cos re) (pow im 4))) (/ (cos re) (pow im 6))))))
(* 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/720 (* (pow im 4) (cos re)))
(* (pow im 4) (+ (* 1/720 (cos re)) (* 1/24 (/ (cos re) (pow im 2)))))
(* (pow im 4) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(* (pow im 4) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(* 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)))))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(+ (exp im) (exp (neg im)))
(pow im 2)
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(* 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)))))
(* 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 4))
(* (pow im 4) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(* 1/720 (* (pow im 6) (cos re)))
(* (pow im 6) (+ (* 1/720 (cos re)) (* 1/24 (/ (cos re) (pow im 2)))))
(* (pow im 6) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(* (pow im 6) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (+ (* 1/2 (/ (cos re) (pow im 4))) (/ (cos re) (pow im 6))))))
(* 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/720 (* (pow im 4) (cos re)))
(* (pow im 4) (+ (* 1/720 (cos re)) (* 1/24 (/ (cos re) (pow im 2)))))
(* (pow im 4) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(* (pow im 4) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(* 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 (* (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)))))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(+ (exp im) (exp (* -1 im)))
(pow im 2)
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(* 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 (* (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/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 4))
(* (pow im 4) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
Outputs
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))) (* (pow re 2) (- (* -1/2 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) 1/2))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) re) re (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))) (* (pow re 2) (- (+ (* -1/2 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (* (pow re 2) (+ 1/24 (* 1/24 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))) 1/2))))
(fma.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (*.f64 re re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ 1 (+ (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))) (* (pow re 2) (- (+ (* -1/2 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (* (pow re 2) (+ 1/24 (+ (* 1/24 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (* (pow re 2) (- (* -1/720 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) 1/720)))))) 1/2))))
(fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/720 binary64) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) re) re) (*.f64 re re) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))) (*.f64 re re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #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 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(+ 1/2 (+ (* -1/2 (* (pow re 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(+ 1/2 (+ (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))) (* 1/24 (* (pow re 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(+ 1/2 (+ (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))) (* (pow re 2) (+ (* -1/2 (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))) (* 1/24 (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))))))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 re re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
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 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(* 1/2 (+ (exp im) (exp (neg im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
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 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
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 (* -1/4 (pow re 2)))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #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))
(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 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #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)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(fma.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
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 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
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 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
-1/4
#s(literal -1/4 binary64)
(- (* 1/48 (pow re 2)) 1/4)
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(- (* 1/48 (pow re 2)) 1/4)
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(- (* 1/48 (pow re 2)) 1/4)
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(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 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(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 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 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) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 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/4 (pow re 2))
(*.f64 #s(literal -1/4 binary64) (*.f64 re re))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(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 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 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/48 (pow re 4))
(*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/48 binary64))
(* (pow re 4) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (-.f64 #s(literal 1/48 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (pow.f64 re #s(literal 4 binary64)))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/48 binary64)) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (pow.f64 re #s(literal 4 binary64)))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/48 binary64)) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (pow.f64 re #s(literal 4 binary64)))
(* 1/48 (pow re 2))
(*.f64 #s(literal 1/48 binary64) (*.f64 re re))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (*.f64 (-.f64 #s(literal 1/48 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) re) re)
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (*.f64 (-.f64 #s(literal 1/48 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) re) re)
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (*.f64 (-.f64 #s(literal 1/48 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) re) re)
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(* (cos re) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(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 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(cos.f64 re)
(cos re)
(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 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 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) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 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/4 (pow re 2))
(*.f64 #s(literal -1/4 binary64) (*.f64 re re))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(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 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* 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/48 (pow re 4))
(*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/48 binary64))
(* (pow re 4) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (-.f64 #s(literal 1/48 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (pow.f64 re #s(literal 4 binary64)))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/48 binary64)) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (pow.f64 re #s(literal 4 binary64)))
(* (pow re 4) (- (+ 1/48 (/ 1/2 (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/48 binary64)) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (pow.f64 re #s(literal 4 binary64)))
(* 1/48 (pow re 2))
(*.f64 #s(literal 1/48 binary64) (*.f64 re re))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (*.f64 (-.f64 #s(literal 1/48 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) re) re)
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (*.f64 (-.f64 #s(literal 1/48 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) re) re)
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (*.f64 (-.f64 #s(literal 1/48 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) re) re)
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))
(*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64)) (cos.f64 re))
(+ (* 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 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(+ (* 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 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
2
#s(literal 2 binary64)
(+ 2 (pow im 2))
(fma.f64 im im #s(literal 2 binary64))
(+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/12 binary64) (fma.f64 im im #s(literal 2 binary64)))
(+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (fma.f64 im im #s(literal 2 binary64)))
2
#s(literal 2 binary64)
(+ 2 (pow im 2))
(fma.f64 im im #s(literal 2 binary64))
(+ 2 (pow im 2))
(fma.f64 im im #s(literal 2 binary64))
(+ 2 (pow im 2))
(fma.f64 im im #s(literal 2 binary64))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(cos re)
(cos.f64 re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
1/24
#s(literal 1/24 binary64)
(+ 1/24 (* 1/720 (pow im 2)))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(+ 1/24 (* 1/720 (pow im 2)))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(+ 1/24 (* 1/720 (pow im 2)))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/24 (pow im 2)))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64))
(+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(* 1/720 (* (pow im 6) (cos re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/720 binary64)) (cos.f64 re))
(* (pow im 6) (+ (* 1/720 (cos re)) (* 1/24 (/ (cos re) (pow im 2)))))
(*.f64 (*.f64 (cos.f64 re) (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 im im)) #s(literal 1/720 binary64))) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(*.f64 (*.f64 (cos.f64 re) (+.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/24 binary64) (*.f64 im im)))) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (+ (* 1/2 (/ (cos re) (pow im 4))) (/ (cos re) (pow im 6))))))
(*.f64 (fma.f64 (cos.f64 re) (+.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/24 binary64) (*.f64 im im))) (/.f64 (cos.f64 re) (pow.f64 im #s(literal 6 binary64)))) (pow.f64 im #s(literal 6 binary64)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/720 (* (pow im 4) (cos re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/720 binary64)) (cos.f64 re))
(* (pow im 4) (+ (* 1/720 (cos re)) (* 1/24 (/ (cos re) (pow im 2)))))
(*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 im im))
(* (pow im 4) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(*.f64 (*.f64 (cos.f64 re) (+.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/24 binary64) (*.f64 im im)))) (pow.f64 im #s(literal 4 binary64)))
(* (pow im 4) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(*.f64 (*.f64 (cos.f64 re) (+.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/24 binary64) (*.f64 im im)))) (pow.f64 im #s(literal 4 binary64)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (neg im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(fma.f64 im im #s(literal 2 binary64))
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(fma.f64 im im #s(literal 2 binary64))
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(fma.f64 im im #s(literal 2 binary64))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/720 (pow im 2))
(*.f64 #s(literal 1/720 binary64) (*.f64 im im))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(* 1/720 (pow im 4))
(*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/720 binary64))
(* (pow im 4) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) im) im)
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(fma.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 1/24 binary64) (*.f64 im im)))
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(fma.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 1/24 binary64) (*.f64 im im)))
(* 1/720 (* (pow im 6) (cos re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/720 binary64)) (cos.f64 re))
(* (pow im 6) (+ (* 1/720 (cos re)) (* 1/24 (/ (cos re) (pow im 2)))))
(*.f64 (*.f64 (cos.f64 re) (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 im im)) #s(literal 1/720 binary64))) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(*.f64 (*.f64 (cos.f64 re) (+.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/24 binary64) (*.f64 im im)))) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (+ (* 1/2 (/ (cos re) (pow im 4))) (/ (cos re) (pow im 6))))))
(*.f64 (fma.f64 (cos.f64 re) (+.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/24 binary64) (*.f64 im im))) (/.f64 (cos.f64 re) (pow.f64 im #s(literal 6 binary64)))) (pow.f64 im #s(literal 6 binary64)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/720 (* (pow im 4) (cos re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/720 binary64)) (cos.f64 re))
(* (pow im 4) (+ (* 1/720 (cos re)) (* 1/24 (/ (cos re) (pow im 2)))))
(*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 im im))
(* (pow im 4) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(*.f64 (*.f64 (cos.f64 re) (+.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/24 binary64) (*.f64 im im)))) (pow.f64 im #s(literal 4 binary64)))
(* (pow im 4) (+ (* 1/720 (cos re)) (+ (* 1/24 (/ (cos re) (pow im 2))) (* 1/2 (/ (cos re) (pow im 4))))))
(*.f64 (*.f64 (cos.f64 re) (+.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/24 binary64) (*.f64 im im)))) (pow.f64 im #s(literal 4 binary64)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+ (exp im) (exp (* -1 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(fma.f64 im im #s(literal 2 binary64))
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(fma.f64 im im #s(literal 2 binary64))
(* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))
(fma.f64 im im #s(literal 2 binary64))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/720 (pow im 2))
(*.f64 #s(literal 1/720 binary64) (*.f64 im im))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(* (pow im 2) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(* 1/720 (pow im 4))
(*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/720 binary64))
(* (pow im 4) (+ 1/720 (* 1/24 (/ 1 (pow im 2)))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) im) im)
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(fma.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 1/24 binary64) (*.f64 im im)))
(* (pow im 4) (+ 1/720 (+ (/ 1/2 (pow im 4)) (* 1/24 (/ 1 (pow im 2))))))
(fma.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/720 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 1/24 binary64) (*.f64 im im)))

rewrite225.0ms (2.5%)

Memory
9.4MiB live, 330.1MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
040244
062242
1225228
21482228
08301228
Stop Event
iter limit
node limit
iter limit
Counts
20 → 351
Calls
Call 1
Inputs
(fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
(cos.f64 re)
#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(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval153.0ms (1.7%)

Memory
28.8MiB live, 258.1MiB allocated
Compiler

Compiled 21 700 to 2 190 computations (89.9% saved)

prune38.0ms (0.4%)

Memory
-4.1MiB live, 104.3MiB allocated
Pruning

19 alts after pruning (14 fresh and 5 done)

PrunedKeptTotal
New8428850
Fresh167
Picked235
Done022
Total84519864
Accuracy
100.0%
Counts
864 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
60.8%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
76.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))))
94.0%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
89.8%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
45.7%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
43.9%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) re) re #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
24.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)) #s(approx (+ (* im im) 2) (*.f64 im im))))
43.8%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 #s(approx (+ (* 1/48 (* re re)) -1/4) (*.f64 #s(literal 1/48 binary64) (*.f64 re re))) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
40.0%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
42.8%
(*.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))))
20.3%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
94.0%
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
56.7%
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
34.5%
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (*.f64 re re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
51.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
33.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
32.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
29.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))))
25.5%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
Compiler

Compiled 531 to 370 computations (30.3% saved)

simplify223.0ms (2.5%)

Memory
-13.4MiB live, 227.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 2 (0.0ms)

IterNodesCost
055446
082440
1153440
2304430
3752430
41881430
53537430
64550430
74963430
85228430
95517430
105872430
08050430
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
#s(literal 1/720 binary64)
(*.f64 im im)
im
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(cos.f64 re)
re
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))
#s(approx (+ (* im im) 2) (*.f64 im im))
(*.f64 im im)
im
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))
(*.f64 re re)
re
#s(literal 1/24 binary64)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
#s(literal 1/720 binary64)
(*.f64 im im)
im
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
#s(literal -1/1440 binary64)
(*.f64 re re)
re
#s(literal 1/48 binary64)
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
Outputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
(*.f64 (cos.f64 re) #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
#s(literal 1/720 binary64)
(*.f64 im im)
im
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(cos.f64 re)
re
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))
#s(approx (+ (* im im) 2) (*.f64 im im))
(*.f64 im im)
im
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))
(*.f64 re re)
re
#s(literal 1/24 binary64)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64))
#s(literal 1/720 binary64)
(*.f64 im im)
im
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
#s(literal -1/1440 binary64)
(*.f64 re re)
re
#s(literal 1/48 binary64)
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)

localize154.0ms (1.7%)

Memory
27.3MiB live, 331.2MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.05078125
(fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))
accuracy0.33655911765244234
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
accuracy15.358170754787526
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy34.44931429315251
#s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
accuracy0.04296875
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
accuracy0.3034941018694908
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
accuracy3.8130366293757367
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
accuracy25.65781594323446
#s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
accuracy0.05859375
(fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
accuracy0.09375
(fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))
accuracy31.382483716602106
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
accuracy34.41567085844094
#s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
accuracy0.00390625
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
accuracy15.358170754787526
#s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))
accuracy30.85056419222346
#s(approx (+ (* im im) 2) (*.f64 im im))
accuracy31.261082190187782
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
accuracy0.01953125
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
accuracy0.04296875
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
accuracy0.3034941018694908
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
accuracy3.812904700373591
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
Samples
120.0ms256×0valid
Compiler

Compiled 608 to 81 computations (86.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 93.0ms
ival-mult: 45.0ms (48.6% of total)
const: 14.0ms (15.1% of total)
ival-add: 12.0ms (13% of total)
ival-cos: 12.0ms (13% of total)
ival-exp: 4.0ms (4.3% of total)
ival-cosh: 3.0ms (3.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)

series31.0ms (0.3%)

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

6 calls:

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

simplify354.0ms (3.9%)

Memory
-25.2MiB live, 237.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

rewrite368.0ms (4.1%)

Memory
20.3MiB live, 137.5MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055368
082362
1295348
21979348
08488346
Stop Event
iter limit
node limit
iter limit
Counts
21 → 310
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
#s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))
#s(approx (+ (* im im) 2) (*.f64 im im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64))
(fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval151.0ms (1.7%)

Memory
-16.8MiB live, 93.7MiB allocated
Compiler

Compiled 21 162 to 2 166 computations (89.8% saved)

prune120.0ms (1.3%)

Memory
1.6MiB live, 51.9MiB allocated
Pruning

23 alts after pruning (16 fresh and 7 done)

PrunedKeptTotal
New7739782
Fresh279
Picked325
Done055
Total77823801
Accuracy
100.0%
Counts
801 → 23
Alt Table
Click to see full alt table
StatusAccuracyProgram
60.8%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
76.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))))
94.0%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
89.8%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re))
25.3%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
43.9%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) re) re #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
23.5%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
24.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)) #s(approx (+ (* im im) 2) (*.f64 im im))))
40.0%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
42.8%
(*.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))))
20.3%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
94.0%
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
56.4%
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) (*.f64 #s(literal 1/720 binary64) (*.f64 im im))) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
53.3%
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
34.5%
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (*.f64 re re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
56.7%
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64))))
56.1%
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 #s(approx (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (*.f64 (*.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) im) im)) (*.f64 im im) #s(literal 1 binary64))))
51.0%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
33.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
32.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re #s(literal 1/24 binary64)) re #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
32.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (+ (* (* re re) 1/24) -1/2) (*.f64 #s(literal 1/24 binary64) (*.f64 re re))) (*.f64 re re) #s(literal 1 binary64))))
29.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (+ (* (* re re) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
25.5%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
Compiler

Compiled 860 to 397 computations (53.8% saved)

regimes108.0ms (1.2%)

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

6 calls:

58.0ms
im
11.0ms
re
10.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
10.0ms
(cos.f64 re)
9.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 25 to 28 computations (-12% saved)

regimes157.0ms (1.7%)

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

6 calls:

108.0ms
(cos.f64 re)
10.0ms
re
10.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
10.0ms
im
9.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 25 to 28 computations (-12% saved)

regimes300.0ms (3.3%)

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

6 calls:

218.0ms
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
44.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
10.0ms
re
9.0ms
im
9.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
97.1%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)))
97.2%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
97.2%2(cos.f64 re)
94.0%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes29.0ms (0.3%)

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

1 calls:

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

Compiled 11 to 10 computations (9.1% saved)

regimes10.0ms (0.1%)

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

1 calls:

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

Compiled 11 to 10 computations (9.1% saved)

regimes19.0ms (0.2%)

Memory
-23.8MiB live, 14.3MiB allocated
Counts
27 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #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)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (+ (* (* re re) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 re 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 im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (+ (* (* re re) 1/24) -1/2) (*.f64 #s(literal 1/24 binary64) (*.f64 re re))) (*.f64 re 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)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re #s(literal 1/24 binary64)) re #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #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 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 #s(approx (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (*.f64 (*.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) im) im)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) (*.f64 #s(literal 1/720 binary64) (*.f64 im im))) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 #s(approx (+ (* 1/48 (* re re)) -1/4) (*.f64 #s(literal 1/48 binary64) (*.f64 re re))) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) re) re #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (*.f64 re re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (* (* 1/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 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#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:

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

Compiled 11 to 10 computations (9.1% saved)

regimes63.0ms (0.7%)

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

6 calls:

24.0ms
re
8.0ms
im
8.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
8.0ms
(cos.f64 re)
7.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
81.8%2(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
88.7%5im
71.3%2re
72.9%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
72.9%2(cos.f64 re)
95.5%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes84.0ms (0.9%)

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

6 calls:

42.0ms
re
11.0ms
im
8.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
7.0ms
(cos.f64 re)
7.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
56.7%1re
70.6%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
70.6%2(cos.f64 re)
56.7%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
64.1%5im
70.6%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes22.0ms (0.2%)

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

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes43.0ms (0.5%)

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

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes48.0ms (0.5%)

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

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes14.0ms (0.2%)

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

Compiled 17 to 18 computations (-5.9% saved)

regimes131.0ms (1.5%)

Memory
-23.5MiB live, 17.9MiB 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)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (+ (* (* re re) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 re 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 im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (+ (* (* re re) 1/24) -1/2) (*.f64 #s(literal 1/24 binary64) (*.f64 re re))) (*.f64 re 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)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re #s(literal 1/24 binary64)) re #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #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))))
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 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
Calls

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes13.0ms (0.1%)

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

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes24.0ms (0.3%)

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

6 calls:

5.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
4.0ms
im
4.0ms
(cos.f64 re)
4.0ms
re
3.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
45.0%2re
47.0%2(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
50.5%3im
55.3%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
55.3%2(cos.f64 re)
55.3%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes10.0ms (0.1%)

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

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes9.0ms (0.1%)

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

4 calls:

2.0ms
im
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))
2.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
45.3%3im
49.9%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
38.0%3(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
38.0%3(cos.f64 re)
Compiler

Compiled 18 to 20 computations (-11.1% saved)

regimes8.0ms (0.1%)

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

4 calls:

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

Compiled 19 to 20 computations (-5.3% saved)

regimes8.0ms (0.1%)

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

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

Compiled 25 to 28 computations (-12% saved)

bsearch1.0ms (0%)

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

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9998125480582964
1.0
0.0ms
-inf
-0.9999989576203014
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9998125480582964
1.0
0.0ms
-inf
-0.9999989576203014
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

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

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

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

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.012008977866754015
0.011070050054166398
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.012008977866754015
0.011070050054166398
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.01911254241070802
0.025872168685734883
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.01911254241070802
0.025872168685734883
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.01911254241070802
0.025872168685734883
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch3.0ms (0%)

Memory
-39.3MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.01911254241070802
0.025872168685734883
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.01911254241070802
0.025872168685734883
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.012008977866754015
0.011070050054166398
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.012008977866754015
0.011070050054166398
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0033039812825595
+inf
0.0ms
-0.01911254241070802
0.025872168685734883
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0033039812825595
+inf
Compiler

Compiled 14 to 15 computations (-7.1% saved)

simplify34.0ms (0.4%)

Memory
7.2MiB live, 85.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01321397
11601397
21621397
31631397
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 (/.f64 #s(literal 1/2 binary64) (exp.f64 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(*.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 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251377709437845/2251799813685248 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 (*.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 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251377709437845/2251799813685248 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 (*.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 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251377709437845/2251799813685248 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 (*.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 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251377709437845/2251799813685248 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 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251377709437845/2251799813685248 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64))))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) (*.f64 #s(literal 1/720 binary64) (*.f64 im im))) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 #s(approx (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (*.f64 (*.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) im) im)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (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 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/576460752303423488 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re 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 im #s(literal 2 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #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)) #s(approx (+ (* im im) 2) (*.f64 im im))))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #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)) #s(approx (+ (* im im) 2) (*.f64 im im)))))
#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 im)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (cosh.f64 im) (cos.f64 re))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -inf.0 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251377709437845/2251799813685248 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -inf.0 binary64)) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))) #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2251377709437845/2251799813685248 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (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 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251377709437845/2251799813685248 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -inf.0 binary64)) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))) #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2251377709437845/2251799813685248 binary64)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cos.f64 re)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (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 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251377709437845/2251799813685248 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -inf.0 binary64)) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))) #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2251377709437845/2251799813685248 binary64)) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (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 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251377709437845/2251799813685248 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 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -inf.0 binary64)) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))) #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2251377709437845/2251799813685248 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (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 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2251377709437845/2251799813685248 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64))))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -inf.0 binary64)) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))) #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2251377709437845/2251799813685248 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64))))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/576460752303423488 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 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))) #s(approx (* 1/2 (cos re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) im) im #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) (*.f64 #s(literal 1/720 binary64) (*.f64 im im))) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) (*.f64 #s(literal 1/720 binary64) (*.f64 im im))) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 #s(approx (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (*.f64 (*.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) im) im)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 #s(approx (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2) (*.f64 (*.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) im) im)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (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 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) #s(approx (* (* 1 (cosh im)) (cos re)) #s(approx (+ (* (* (cos re) (+ (* (+ (* 1/720 (* im im)) 1/24) (* im im)) 1/2)) (* im im)) (cos re)) (fma.f64 (fma.f64 #s(approx (+ (* 1/720 (* im im)) 1/24) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/576460752303423488 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/576460752303423488 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re 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 im #s(literal 2 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/576460752303423488 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #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)) #s(approx (+ (* im im) 2) (*.f64 im im))))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal -5764607523034235/576460752303423488 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)))) (if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #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)) #s(approx (+ (* im im) 2) (*.f64 im im))))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 2 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #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)) #s(approx (+ (* im im) 2) (*.f64 im im)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #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)) #s(approx (+ (* im im) 2) (*.f64 im im)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))

soundness2.0s (21.9%)

Memory
-25.9MiB live, 1 433.3MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01028
01728
14724
228522
3248522
0903422
02452118
17711982
221991953
352361911
085441816
055368
082362
1295348
21979348
08488346
02213893
17003718
222773596
368143505
479613505
081443268
02273806
16833662
219903560
367923426
085273203
0119655
1346623
21071613
33276596
47351596
57956596
08023556
Stop Event
fuel
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
Compiler

Compiled 1 722 to 915 computations (46.9% saved)

preprocess126.0ms (1.4%)

Memory
24.1MiB live, 262.8MiB allocated
Remove

(abs re)

(abs im)

Compiler

Compiled 1 722 to 316 computations (81.6% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...