math.cos on complex, real part

Time bar (total: 9.1s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 13 to 12 computations (7.7% saved)

sample1.5s (16.1%)

Memory
9.1MiB live, 1 407.6MiB allocated
Samples
1.0s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 722.0ms
ival-cos: 312.0ms (43.2% of total)
ival-exp: 200.0ms (27.7% of total)
ival-mult: 117.0ms (16.2% of total)
ival-add: 40.0ms (5.5% of total)
ival-neg: 40.0ms (5.5% of total)
ival-true: 5.0ms (0.7% of total)
exact: 5.0ms (0.7% of total)
ival-assert: 3.0ms (0.4% of total)
Bogosity

explain176.0ms (1.9%)

Memory
30.7MiB live, 144.3MiB 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
92.0ms512×0valid
Compiler

Compiled 81 to 34 computations (58% saved)

Precisions
Click to see histograms. Total time spent on operations: 76.0ms
ival-exp: 29.0ms (38.3% of total)
ival-add: 26.0ms (34.3% of total)
ival-cos: 11.0ms (14.5% of total)
ival-mult: 6.0ms (7.9% of total)
ival-neg: 2.0ms (2.6% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess149.0ms (1.6%)

Memory
-18.2MiB live, 61.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.3MiB live, 0.3MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0%)

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

simplify8.0ms (0.1%)

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

localize81.0ms (0.9%)

Memory
2.1MiB live, 41.4MiB 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
72.0ms256×0valid
Compiler

Compiled 35 to 12 computations (65.7% saved)

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

series110.0ms (1.2%)

Memory
-34.8MiB live, 3.9MiB 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
103.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
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
re
@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))

simplify246.0ms (2.7%)

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

rewrite329.0ms (3.6%)

Memory
-9.8MiB live, 155.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>

eval181.0ms (2%)

Memory
-5.7MiB live, 79.9MiB allocated
Compiler

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

prune67.0ms (0.7%)

Memory
-19.9MiB live, 18.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
48.8%
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)))
100.0%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
75.6%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
50.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
Compiler

Compiled 39 to 36 computations (7.7% saved)

simplify247.0ms (2.7%)

Memory
24.2MiB live, 177.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
cost-diff0
(cosh.f64 (*.f64 #s(literal 3 binary64) im))
cost-diff0
(*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
cost-diff0
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)))
cost-diff640
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
cost-diff0
(cos.f64 re)
cost-diff0
(cosh.f64 im)
cost-diff0
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
cost-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
032145
050141
1104141
2235127
3462127
41173127
52623127
63486127
74306127
84431127
94500127
104574127
116852127
126993127
137594127
08021127
Stop Event
iter limit
node limit
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
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
#s(literal 2 binary64)
(cosh.f64 (*.f64 #s(literal 3 binary64) im))
(*.f64 #s(literal 3 binary64) im)
#s(literal 3 binary64)
im
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(cos.f64 re)
re
#s(literal 1/2 binary64)
(fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))
(cosh.f64 (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal -1 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 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(cos.f64 re)
re
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(cosh.f64 im)
#s(literal 1 binary64)
(cosh.f64 im)
im
(cos.f64 re)
re
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)))
(*.f64 (/.f64 (cos.f64 re) (fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64))) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (cos.f64 re))
(*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
(*.f64 (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(cosh.f64 (*.f64 #s(literal 3 binary64) im))
(*.f64 #s(literal 3 binary64) im)
#s(literal 3 binary64)
im
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(cos.f64 re)
re
#s(literal 1/2 binary64)
(fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))
(fma.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64) #s(literal -1 binary64))
(cosh.f64 (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal -1 binary64)

localize368.0ms (4%)

Memory
4.7MiB live, 273.8MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0
(cosh.f64 (*.f64 #s(literal 2 binary64) im))
accuracy0
(cos.f64 re)
accuracy0.00390625
(fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))
accuracy0.2539041858302058
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)))
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))))
accuracy0.2419203225811334
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy0
(cos.f64 re)
accuracy0.24609662326272866
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
Samples
210.0ms130×5exit
60.0ms126×0valid
Compiler

Compiled 137 to 31 computations (77.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 163.0ms
ival-mult: 55.0ms (33.8% of total)
ival-add: 45.0ms (27.6% of total)
adjust: 25.0ms (15.4% of total)
ival-cosh: 17.0ms (10.4% of total)
ival-exp: 8.0ms (4.9% of total)
ival-cos: 6.0ms (3.7% of total)
ival-div: 5.0ms (3.1% of total)
exact: 1.0ms (0.6% of total)
ival-neg: 1.0ms (0.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series49.0ms (0.5%)

Memory
20.0MiB live, 53.5MiB allocated
Counts
14 → 228
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 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())
#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())
#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())
#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<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 (* 3 im)) (/ 1 (exp (* 3 im))))) (taylor 0 re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/4 (* (pow re 2) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor 0 re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (* 1/48 (* (pow re 2) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))))))) (taylor 0 re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (* 1/48 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))))))) (taylor 0 re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor 0 re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/4 (/ (* (pow re 2) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (* 1/2 (/ (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1)))) (taylor 0 re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (/ (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (* (pow re 2) (+ (* -1/4 (/ (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (* 1/48 (/ (* (pow re 2) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1)))))) (taylor 0 re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (/ (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (* (pow re 2) (+ (* -1/4 (/ (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (* (pow re 2) (+ (* -1/1440 (/ (* (pow re 2) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (* 1/48 (/ (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1)))))))) (taylor 0 re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<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 (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor inf re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor inf re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor inf re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor inf re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor inf re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor inf re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor inf re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor inf re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<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 (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor -inf re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor -inf re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor -inf re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor -inf re) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor -inf re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor -inf re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor -inf re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor -inf re) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<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 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* 9/2 (* (pow im 2) (cos re)))) (taylor 0 im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (+ (* 27/8 (* (pow im 2) (cos re))) (* 9/2 (cos re))))) (taylor 0 im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (+ (* 9/2 (cos re)) (* (pow im 2) (+ (* 81/80 (* (pow im 2) (cos re))) (* 27/8 (cos re))))))) (taylor 0 im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor 0 im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (- (* 9/2 (cos re)) (* 4 (cos re))))) (taylor 0 im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (- (+ (* 9/2 (cos re)) (* (pow im 2) (- (* 27/8 (cos re)) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))) (* 4 (cos re))))) (taylor 0 im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (cos re) (* (pow im 2) (- (+ (* 9/2 (cos re)) (* (pow im 2) (- (+ (* 27/8 (cos re)) (* (pow im 2) (- (* 81/80 (cos re)) (+ (* 8/45 (cos re)) (+ (* 4/3 (- (* 9/2 (cos re)) (* 4 (cos re)))) (* 4 (- (* 27/8 (cos re)) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))))))) (+ (* 4/3 (cos re)) (* 4 (- (* 9/2 (cos re)) (* 4 (cos re)))))))) (* 4 (cos re))))) (taylor 0 im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt 2 (taylor 0 im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (+ 2 (* 9 (pow im 2))) (taylor 0 im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (+ 2 (* (pow im 2) (+ 9 (* 27/4 (pow im 2))))) (taylor 0 im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (+ 2 (* (pow im 2) (+ 9 (* (pow im 2) (+ 27/4 (* 81/40 (pow im 2))))))) (taylor 0 im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 9/2 (pow im 2))) (taylor 0 im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow im 2) (+ 9/2 (* 27/8 (pow im 2))))) (taylor 0 im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow im 2) (+ 9/2 (* (pow im 2) (+ 27/8 (* 81/80 (pow im 2))))))) (taylor 0 im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 4 (pow im 2))) (taylor 0 im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow im 2) (+ 4 (* 4/3 (pow im 2))))) (taylor 0 im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow im 2) (+ 4 (* (pow im 2) (+ 4/3 (* 8/45 (pow im 2))))))) (taylor 0 im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 2 (pow im 2))) (taylor 0 im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow im 2) (+ 2 (* 2/3 (pow im 2))))) (taylor 0 im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow im 2) (+ 2 (* (pow im 2) (+ 2/3 (* 4/45 (pow im 2))))))) (taylor 0 im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) 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))) (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 (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor inf im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor inf im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor inf im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor inf im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor inf im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor inf im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor inf im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor inf im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (taylor inf im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (taylor inf im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (taylor inf im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (taylor inf im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (taylor inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (taylor inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (taylor inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (taylor inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1) (taylor inf im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1) (taylor inf im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1) (taylor inf im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1) (taylor inf im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 2 im)) (/ 1 (exp (* 2 im))))) (taylor inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 2 im)) (/ 1 (exp (* 2 im))))) (taylor inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 2 im)) (/ 1 (exp (* 2 im))))) (taylor inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 2 im)) (/ 1 (exp (* 2 im))))) (taylor inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) 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))) (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 (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor -inf im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor -inf im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor -inf im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))))) (taylor -inf im) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor -inf im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor -inf im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor -inf im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (* (cos re) (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1))) (taylor -inf im) (#s(alt (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) (patch (/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (taylor -inf im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (taylor -inf im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (taylor -inf im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (+ (exp (* 3 im)) (/ 1 (exp (* 3 im)))) (taylor -inf im) (#s(alt (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (patch (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (taylor -inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (taylor -inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (taylor -inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 3 im)) (/ 1 (exp (* 3 im))))) (taylor -inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 3 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 3 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1) (taylor -inf im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1) (taylor -inf im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1) (taylor -inf im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (+ (exp (* 2 im)) (/ 1 (exp (* 2 im)))) 1) (taylor -inf im) (#s(alt (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) (patch (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 2 im)) (/ 1 (exp (* 2 im))))) (taylor -inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 2 im)) (/ 1 (exp (* 2 im))))) (taylor -inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 2 im)) (/ 1 (exp (* 2 im))))) (taylor -inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (+ (exp (* 2 im)) (/ 1 (exp (* 2 im))))) (taylor -inf im) (#s(alt (cosh.f64 (*.f64 #s(literal 2 binary64) im)) (patch (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
22.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) (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (/ (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (+ (* 2 (cosh (* 2 im))) -1)) (* 2 (cosh (* 3 im))) (cosh (* 3 im)) (+ (* 2 (cosh (* 2 im))) -1) (cosh (* 2 im)))
4.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) (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (/ (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (+ (* 2 (cosh (* 2 im))) -1)) (* 2 (cosh (* 3 im))) (cosh (* 3 im)) (+ (* 2 (cosh (* 2 im))) -1) (cosh (* 2 im)))
4.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) (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (/ (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (+ (* 2 (cosh (* 2 im))) -1)) (* 2 (cosh (* 3 im))) (cosh (* 3 im)) (+ (* 2 (cosh (* 2 im))) -1) (cosh (* 2 im)))
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) (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (/ (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (+ (* 2 (cosh (* 2 im))) -1)) (* 2 (cosh (* 3 im))) (cosh (* 3 im)) (+ (* 2 (cosh (* 2 im))) -1) (cosh (* 2 im)))
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) (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (/ (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (+ (* 2 (cosh (* 2 im))) -1)) (* 2 (cosh (* 3 im))) (cosh (* 3 im)) (+ (* 2 (cosh (* 2 im))) -1) (cosh (* 2 im)))

simplify198.0ms (2.2%)

Memory
-10.5MiB live, 250.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

rewrite181.0ms (2%)

Memory
19.0MiB live, 283.1MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
032111
05093
115379
284179
0848579
Stop Event
iter limit
node limit
iter limit
Counts
14 → 1 027
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)
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)))
(*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 3 binary64) im)))
(cosh.f64 (*.f64 #s(literal 3 binary64) im))
(fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64))
(cosh.f64 (*.f64 #s(literal 2 binary64) 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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval185.0ms (2%)

Memory
-24.4MiB live, 318.9MiB allocated
Compiler

Compiled 31 370 to 2 406 computations (92.3% saved)

prune34.0ms (0.4%)

Memory
9.3MiB live, 93.6MiB allocated
Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New1 301111 312
Fresh000
Picked314
Done000
Total1 304121 316
Accuracy
100.0%
Counts
1 316 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.2%
(/.f64 #s(approx (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (*.f64 (fma.f64 #s(literal 9/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)))
64.0%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))))
64.8%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
51.4%
(*.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))))
48.3%
(*.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))))
49.0%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
47.4%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
50.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
38.2%
#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))))
33.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))))
33.9%
#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))))
28.1%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
Compiler

Compiled 285 to 232 computations (18.6% saved)

simplify19.0ms (0.2%)

Memory
-8.1MiB live, 28.7MiB 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
#s(approx (cos re) #s(literal 1 binary64))
cost-diff0
(cosh.f64 im)
cost-diff0
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
cost-diff320
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
031232
046228
187228
2154222
3247222
4337222
5423222
6448222
7479222
8527222
9527222
0527222
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
#s(literal 1 binary64)
(cosh.f64 im)
im
#s(approx (cos re) #s(literal 1 binary64))
#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
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) (cosh.f64 im))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(cosh.f64 im)
#s(literal 1 binary64)
(cosh.f64 im)
im
#s(approx (cos re) #s(literal 1 binary64))
#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))))
(*.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)

localize123.0ms (1.3%)

Memory
19.7MiB live, 166.6MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0625
(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.08984375
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
accuracy15.613804450428027
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy31.376084837867293
#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
(*.f64 re re)
accuracy0.00390625
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
accuracy15.613804450428027
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy31.262035915257453
#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.613804450428027
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy29.0584894938347
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
accuracy29.058875503620953
#s(approx (cos re) #s(literal 1 binary64))
accuracy31.7308561072105
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
accuracy0
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
accuracy0
(cosh.f64 im)
accuracy0.00390625
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
accuracy29.058875503620953
#s(approx (cos re) #s(literal 1 binary64))
Samples
74.0ms256×0valid
Compiler

Compiled 158 to 28 computations (82.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 57.0ms
const: 25.0ms (43.8% of total)
ival-mult: 14.0ms (24.6% of total)
ival-cos: 6.0ms (10.5% of total)
ival-add: 5.0ms (8.8% of total)
ival-exp: 3.0ms (5.3% of total)
ival-cosh: 3.0ms (5.3% of total)
ival-neg: 1.0ms (1.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series21.0ms (0.2%)

Memory
12.7MiB live, 48.2MiB allocated
Counts
17 → 264
Calls
Call 1
Inputs
#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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<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 #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 (*.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>) () ())
Outputs
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor 0 re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #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 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #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 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #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 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 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 #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/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 (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 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 #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 (* 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 (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf re) (#s(alt (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 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 #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 (* 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 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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 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 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 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 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 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 (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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 #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/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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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) (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/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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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)) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64))) #<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) (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>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
2.0ms
re
@inf
((* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* 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))
2.0ms
re
@-inf
((* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* 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.0ms
im
@-inf
((* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* 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.0ms
im
@inf
((* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* 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.0ms
re
@0
((* 1 (cosh im)) (* (* 1 (cosh im)) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* 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))

simplify268.0ms (2.9%)

Memory
-1.2MiB live, 312.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01472676
14412521
212432487
335682402
080162268
Stop Event
iter limit
node limit
Counts
264 → 264
Calls
Call 1
Inputs
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
(* 1/2 (+ (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)
(* 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)
(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) (+ (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)))))
(* 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)
(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) (+ (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)))))
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) (* 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/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) (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/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) (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)))))
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 (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)))))))))
(*.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/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 (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 (+ (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 (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
#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 (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
#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 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #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))
(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 (*.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 (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
#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) (- (* 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))
(* 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)
(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) (+ (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 (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* 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)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 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)
(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) (+ (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 (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* 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)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 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)))))))
(*.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))
(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)))
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)))
(* 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) (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/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) (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)))

rewrite251.0ms (2.7%)

Memory
-25.6MiB live, 408.1MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
031178
046174
1154160
2922160
08359160
Stop Event
iter limit
node limit
iter limit
Counts
17 → 437
Calls
Call 1
Inputs
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) #s(literal 1 binary64)))
(cosh.f64 im)
#s(approx (cos re) #s(literal 1 binary64))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
(*.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))
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>

eval121.0ms (1.3%)

Memory
29.0MiB live, 292.4MiB allocated
Compiler

Compiled 20 165 to 2 069 computations (89.7% saved)

prune33.0ms (0.4%)

Memory
-13.5MiB live, 100.9MiB allocated
Pruning

16 alts after pruning (14 fresh and 2 done)

PrunedKeptTotal
New9068914
Fresh066
Picked415
Done011
Total91016926
Accuracy
100.0%
Counts
926 → 16
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.2%
(/.f64 #s(approx (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (*.f64 (fma.f64 #s(literal 9/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)))
64.0%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))))
64.8%
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
59.2%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
55.9%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
51.4%
(*.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))))
24.6%
(*.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))))
25.2%
(*.f64 #s(approx (* 1/2 (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))))
48.9%
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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))))
11.9%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
22.4%
(*.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))))
50.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
38.2%
#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))))
33.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))))
33.9%
#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))))
28.1%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
Compiler

Compiled 408 to 323 computations (20.8% saved)

simplify24.0ms (0.3%)

Memory
-4.4MiB live, 39.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 19 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
038337
057325
193325
2126325
3187325
4226325
5277325
6319325
7367325
8450325
9453325
10458325
11458325
0458325
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
(cosh.f64 im)
im
#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)) #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
(*.f64 #s(approx (* 1/2 (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)) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))
#s(approx (+ (* im im) 2) (*.f64 im im))
(*.f64 im im)
im
(*.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)) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))
#s(approx (+ (* im im) 2) (*.f64 im im))
(*.f64 im im)
im
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))
#s(literal 1 binary64)
(/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
#s(literal -1/4 binary64)
(*.f64 re re)
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))
im
#s(literal 2 binary64)
Outputs
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
(*.f64 #s(approx (cos re) #s(literal 1 binary64)) (cosh.f64 im))
(cosh.f64 im)
im
#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)) #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
(*.f64 #s(approx (* 1/2 (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)) (fma.f64 #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)) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))
#s(approx (+ (* im im) 2) (*.f64 im im))
(*.f64 im im)
im
(*.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)) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))
#s(approx (+ (* im im) 2) (*.f64 im im))
(*.f64 im im)
im
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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))))
(*.f64 #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))) #s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #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)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
#s(literal 1 binary64)
(/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
#s(literal -1/4 binary64)
(*.f64 re re)
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))
im
#s(literal 2 binary64)

localize139.0ms (1.5%)

Memory
-11.1MiB live, 228.8MiB allocated
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.09765625
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))
accuracy0.4233728171816519
(/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))
accuracy15.613804450428027
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
accuracy31.262035915257453
#s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))))
accuracy0.08984375
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
accuracy15.613804450428027
#s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))
accuracy29.963892341974745
#s(approx (+ (* im im) 2) (*.f64 im im))
accuracy31.376084837867293
#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)) #s(approx (+ (* im im) 2) (*.f64 im im))))
accuracy15.613804450428027
#s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))
accuracy29.963892341974745
#s(approx (+ (* im im) 2) (*.f64 im im))
accuracy31.262035915257453
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
accuracy0.00390625
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
accuracy15.613804450428027
#s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))
accuracy29.0584894938347
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
accuracy29.963892341974745
#s(approx (+ (* im im) 2) (*.f64 im im))
accuracy0
(cosh.f64 im)
accuracy0.00390625
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
accuracy29.058875503620953
#s(approx (cos re) #s(literal 1 binary64))
Samples
103.0ms256×0valid
Compiler

Compiled 206 to 31 computations (85% saved)

Precisions
Click to see histograms. Total time spent on operations: 83.0ms
ival-mult: 34.0ms (41.1% of total)
ival-exp: 16.0ms (19.3% of total)
ival-add: 10.0ms (12.1% of total)
ival-div: 8.0ms (9.7% of total)
ival-cos: 6.0ms (7.3% of total)
const: 4.0ms (4.8% of total)
ival-cosh: 3.0ms (3.6% of total)
ival-neg: 1.0ms (1.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series25.0ms (0.3%)

Memory
4.8MiB live, 87.1MiB allocated
Counts
20 → 300
Calls
Call 1
Inputs
#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt (cosh.f64 im) (patch (cosh.f64 im) #<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)) #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 (*.f64 #s(approx (* 1/2 (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)))) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))) #<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)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))) #<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 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) #<representation binary64>) () ())
#s(alt (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<representation binary64>) () ())
#s(alt #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) #<representation binary64>) () ())
#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re 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>) () ())
Outputs
#s(alt (* 1/2 (+ (exp im) (/ 1 (exp im)))) (taylor 0 re) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #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 (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #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 (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #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 (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 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)) #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 (*.f64 #s(approx (* 1/2 (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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 1/2 (taylor 0 re) (#s(alt (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re 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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 re) (#s(alt #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ())
#s(alt 2 (taylor 0 re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 2 (pow re 2)) (taylor 0 re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 2 (* (pow re 2) (+ 1 (* 1/2 (pow re 2))))) (taylor 0 re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 2 (* (pow re 2) (+ 1 (* (pow re 2) (+ 1/2 (* 1/4 (pow re 2))))))) (taylor 0 re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf re) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf re) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf re) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf re) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 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)) #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 (*.f64 #s(approx (* 1/2 (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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 (* -1/4 (pow re 2)) (taylor inf re) (#s(alt (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #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 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #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 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #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 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re 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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor inf re) (#s(alt #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ())
#s(alt (/ -4 (pow re 2)) (taylor inf re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (+ 4 (* 8 (/ 1 (pow re 2)))) (pow re 2))) (taylor inf re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (* -1 (/ (+ 8 (* 16 (/ 1 (pow re 2)))) (pow re 2))) 4) (pow re 2)) (taylor inf re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (* -1 (/ (+ 16 (* 32 (/ 1 (pow re 2)))) (pow re 4))) (+ 4 (* 8 (/ 1 (pow re 2))))) (pow re 2)) (taylor inf re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf re) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf re) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf re) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf re) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 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)) #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 (*.f64 #s(approx (* 1/2 (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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 (* -1/4 (pow re 2)) (taylor -inf re) (#s(alt (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #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 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #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 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #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 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))) (patch (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re 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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (cos re)) (taylor -inf re) (#s(alt #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) (patch #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) #<representation binary64>) () ())) ())
#s(alt (/ -4 (pow re 2)) (taylor -inf re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (+ 4 (* 8 (/ 1 (pow re 2)))) (pow re 2))) (taylor -inf re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (* -1 (/ (+ 8 (* 16 (/ 1 (pow re 2)))) (pow re 2))) 4) (pow re 2)) (taylor -inf re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (- (* -1 (/ (+ 16 (* 32 (/ 1 (pow re 2)))) (pow re 4))) (+ 4 (* 8 (/ 1 (pow re 2))))) (pow re 2)) (taylor -inf re) (#s(alt (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (patch (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor 0 im) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 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 (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 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 (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 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 (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<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 (*.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 (*.f64 #s(approx (* 1/2 (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))) #<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)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #s(approx (+ (* im im) 2) (*.f64 im im)))) #<representation binary64>) () ())) ())
#s(alt (cos re) (taylor 0 im) (#s(alt (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf im) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf im) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor inf im) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<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) (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 (*.f64 #s(approx (* 1/2 (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf im) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf im) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im))))) (taylor -inf im) (#s(alt (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) (patch (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64))) #<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) (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 (*.f64 #s(approx (* 1/2 (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (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)))) (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)) #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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) (patch (*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)))) #<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
2.0ms
im
@-inf
((* (cosh im) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* 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 (/ 1 (+ (* -1/4 (* re re)) 1/2))) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (/ 1 (+ (* -1/4 (* re re)) 1/2)) (+ (exp (neg im)) (exp im)))
2.0ms
re
@inf
((* (cosh im) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* 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 (/ 1 (+ (* -1/4 (* re re)) 1/2))) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (/ 1 (+ (* -1/4 (* re re)) 1/2)) (+ (exp (neg im)) (exp im)))
2.0ms
re
@-inf
((* (cosh im) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* 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 (/ 1 (+ (* -1/4 (* re re)) 1/2))) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (/ 1 (+ (* -1/4 (* re re)) 1/2)) (+ (exp (neg im)) (exp im)))
1.0ms
im
@inf
((* (cosh im) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* 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 (/ 1 (+ (* -1/4 (* re re)) 1/2))) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (/ 1 (+ (* -1/4 (* re re)) 1/2)) (+ (exp (neg im)) (exp im)))
1.0ms
re
@0
((* (cosh im) (cos re)) (cosh im) (cos re) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (+ (exp (neg im)) (exp im)) (+ (* 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 (/ 1 (+ (* -1/4 (* re re)) 1/2))) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1/2 (cos re)) (/ 1 (+ (* -1/4 (* re re)) 1/2)) (+ (exp (neg im)) (exp im)))

simplify204.0ms (2.2%)

Memory
3.9MiB live, 354.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01792960
15342805
215242757
345782672
082912517
Stop Event
iter limit
node limit
Counts
300 → 300
Calls
Call 1
Inputs
(* 1/2 (+ (exp im) (/ 1 (exp im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* 1/48 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))))))
(+ (* 1/2 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/48 (+ (exp im) (/ 1 (exp im)))))))))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (+ (exp im) (exp (neg im))))
(+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* 1/48 (* (pow re 2) (+ (exp im) (exp (neg im))))))))
(+ (* 1/2 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (exp (neg im)))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/48 (+ (exp im) (exp (neg im)))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(* 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)
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* -1/4 (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)))
2
(+ 2 (pow re 2))
(+ 2 (* (pow re 2) (+ 1 (* 1/2 (pow re 2)))))
(+ 2 (* (pow re 2) (+ 1 (* (pow re 2) (+ 1/2 (* 1/4 (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)
(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)))))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* 1/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))
(/ -4 (pow re 2))
(* -1 (/ (+ 4 (* 8 (/ 1 (pow re 2)))) (pow re 2)))
(/ (- (* -1 (/ (+ 8 (* 16 (/ 1 (pow re 2)))) (pow re 2))) 4) (pow re 2))
(/ (- (* -1 (/ (+ 16 (* 32 (/ 1 (pow re 2)))) (pow re 4))) (+ 4 (* 8 (/ 1 (pow re 2))))) (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)
(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)))))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* 1/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))
(/ -4 (pow re 2))
(* -1 (/ (+ 4 (* 8 (/ 1 (pow re 2)))) (pow re 2)))
(/ (- (* -1 (/ (+ 8 (* 16 (/ 1 (pow re 2)))) (pow re 2))) 4) (pow re 2))
(/ (- (* -1 (/ (+ 16 (* 32 (/ 1 (pow re 2)))) (pow re 4))) (+ 4 (* 8 (/ 1 (pow re 2))))) (pow re 2))
(cos re)
(+ (cos re) (* 1/2 (* (pow im 2) (cos re))))
(+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))
(+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))
1
(+ 1 (* 1/2 (pow im 2)))
(+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))
(+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))
(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)))))))
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/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/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 (* (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) (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/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)))
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 (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)))))))))
(*.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/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 (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
#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 (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
#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 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #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))
(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 (*.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 (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
#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) (- (* 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))
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 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #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 (+ (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 (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
#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))
2
#s(literal 2 binary64)
(+ 2 (pow re 2))
(fma.f64 re re #s(literal 2 binary64))
(+ 2 (* (pow re 2) (+ 1 (* 1/2 (pow re 2)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2 binary64) (fma.f64 re re #s(literal 2 binary64)))
(+ 2 (* (pow re 2) (+ 1 (* (pow re 2) (+ 1/2 (* 1/4 (pow re 2)))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)) (fma.f64 re re #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)))
(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 (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* 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)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(* -1/4 (pow re 2))
(*.f64 (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #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))
(/ -4 (pow re 2))
(/.f64 #s(literal -4 binary64) (*.f64 re re))
(* -1 (/ (+ 4 (* 8 (/ 1 (pow re 2)))) (pow re 2)))
(/.f64 (/.f64 (-.f64 #s(literal -4 binary64) (/.f64 #s(literal 8 binary64) (*.f64 re re))) re) re)
(/ (- (* -1 (/ (+ 8 (* 16 (/ 1 (pow re 2)))) (pow re 2))) 4) (pow re 2))
(/.f64 (-.f64 (/.f64 #s(literal -4 binary64) re) (/.f64 (+.f64 (/.f64 #s(literal 16 binary64) (*.f64 re re)) #s(literal 8 binary64)) (pow.f64 re #s(literal 3 binary64)))) re)
(/ (- (* -1 (/ (+ 16 (* 32 (/ 1 (pow re 2)))) (pow re 4))) (+ 4 (* 8 (/ 1 (pow re 2))))) (pow re 2))
(/.f64 (-.f64 (-.f64 #s(literal -4 binary64) (/.f64 #s(literal 8 binary64) (*.f64 re re))) (/.f64 (+.f64 (/.f64 #s(literal 32 binary64) (*.f64 re re)) #s(literal 16 binary64)) (pow.f64 re #s(literal 4 binary64)))) (*.f64 re re))
(* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (* (cos re) (+ (exp 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)
(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 (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* 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)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- 1/48 (* 1/4 (/ 1 (pow re 2)))))
(fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(* -1/4 (pow re 2))
(*.f64 (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #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))
(/ -4 (pow re 2))
(/.f64 #s(literal -4 binary64) (*.f64 re re))
(* -1 (/ (+ 4 (* 8 (/ 1 (pow re 2)))) (pow re 2)))
(/.f64 (/.f64 (-.f64 #s(literal -4 binary64) (/.f64 #s(literal 8 binary64) (*.f64 re re))) re) re)
(/ (- (* -1 (/ (+ 8 (* 16 (/ 1 (pow re 2)))) (pow re 2))) 4) (pow re 2))
(/.f64 (-.f64 (/.f64 #s(literal -4 binary64) re) (/.f64 (+.f64 (/.f64 #s(literal 16 binary64) (*.f64 re re)) #s(literal 8 binary64)) (pow.f64 re #s(literal 3 binary64)))) re)
(/ (- (* -1 (/ (+ 16 (* 32 (/ 1 (pow re 2)))) (pow re 4))) (+ 4 (* 8 (/ 1 (pow re 2))))) (pow re 2))
(/.f64 (-.f64 (-.f64 #s(literal -4 binary64) (/.f64 #s(literal 8 binary64) (*.f64 re re))) (/.f64 (+.f64 (/.f64 #s(literal 32 binary64) (*.f64 re re)) #s(literal 16 binary64)) (pow.f64 re #s(literal 4 binary64)))) (*.f64 re 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)))))))
(*.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))
(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)))
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/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/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 (* (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) (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/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))

rewrite489.0ms (5.3%)

Memory
26.2MiB live, 275.6MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
038247
057235
1186223
2961223
08396223
Stop Event
iter limit
node limit
iter limit
Counts
20 → 550
Calls
Call 1
Inputs
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
(cosh.f64 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)) #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 #s(approx (* 1/2 (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)) (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)) #s(approx (+ (* im im) 2) (*.f64 im im))))
#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))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (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)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (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)))
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>

eval224.0ms (2.4%)

Memory
-12.9MiB live, 228.0MiB allocated
Compiler

Compiled 21 445 to 2 273 computations (89.4% saved)

prune80.0ms (0.9%)

Memory
1.7MiB live, 79.6MiB allocated
Pruning

18 alts after pruning (14 fresh and 4 done)

PrunedKeptTotal
New9488956
Fresh369
Picked325
Done022
Total95418972
Accuracy
100.0%
Counts
972 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.2%
(/.f64 #s(approx (* (* 2 (cosh (* 3 im))) (* (cos re) 1/2)) (*.f64 (fma.f64 #s(literal 9/2 binary64) (*.f64 im im) #s(literal 1 binary64)) (cos.f64 re))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)))
64.0%
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))))
64.8%
(*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))
59.2%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
55.9%
(*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))
27.6%
(*.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))))
24.6%
(*.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)) #s(approx (+ (* im im) 2) (*.f64 im im))))
33.9%
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64)))
42.1%
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) #s(approx (/ 1 (+ (* -1/4 (* re re)) 1/2)) (fma.f64 re re #s(literal 2 binary64))))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
12.0%
(*.f64 #s(approx (* 1/2 (cos re)) (/.f64 #s(literal 1 binary64) #s(approx (/ 1 (+ (* -1/4 (* re re)) 1/2)) (/.f64 (/.f64 (-.f64 #s(literal -4 binary64) (/.f64 #s(literal 8 binary64) (*.f64 re re))) re) re)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
11.9%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (/ 1 (/ 1 (+ (* -1/4 (* re re)) 1/2))) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
11.9%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
22.4%
(*.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))))
50.4%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
38.2%
#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))))
33.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))))
33.9%
#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))))
28.1%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(literal 1 binary64)))
Compiler

Compiled 663 to 318 computations (52% saved)

regimes136.0ms (1.5%)

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

6 calls:

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

Compiled 25 to 28 computations (-12% saved)

regimes72.0ms (0.8%)

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

6 calls:

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

Compiled 25 to 28 computations (-12% saved)

regimes71.0ms (0.8%)

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

1 calls:

24.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)

regimes299.0ms (3.3%)

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

2 calls:

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

Compiled 12 to 12 computations (0% saved)

regimes52.0ms (0.6%)

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

6 calls:

12.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
10.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
9.0ms
im
7.0ms
re
7.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
61.1%2im
59.2%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
72.4%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
72.4%2(cos.f64 re)
61.9%2re
72.4%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)

regimes21.0ms (0.2%)

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

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes21.0ms (0.2%)

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

3 calls:

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

regimes20.0ms (0.2%)

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

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes17.0ms (0.2%)

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

3 calls:

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

regimes24.0ms (0.3%)

Memory
32.9MiB live, 70.8MiB 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))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (/ 1 (/ 1 (+ (* -1/4 (* re re)) 1/2))) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) #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))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.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))))
(*.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:

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

Compiled 25 to 28 computations (-12% saved)

regimes14.0ms (0.2%)

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

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes11.0ms (0.1%)

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

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes8.0ms (0.1%)

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

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

Compiled 17 to 18 computations (-5.9% saved)

regimes6.0ms (0.1%)

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

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes8.0ms (0.1%)

Memory
-17.8MiB live, 21.2MiB 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
im
2.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 (exp.f64 (neg.f64 im)) (exp.f64 im))
Results
AccuracySegmentsBranch
47.4%2(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
47.4%2im
33.8%2re
47.5%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
29.6MiB live, 29.6MiB 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
im
1.0ms
(*.f64 #s(literal 1/2 binary64) (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
(cos.f64 re)
Results
AccuracySegmentsBranch
28.1%1re
28.1%1(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
28.1%1(cos.f64 re)
28.1%1(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
28.1%1im
28.1%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.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999999999999
1.0
0.0ms
-inf
-0.9768580124198111
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

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

Compiled 14 to 15 computations (-7.1% saved)

bsearch2.0ms (0%)

Memory
-36.1MiB live, 1.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999999999999
1.0
2.0ms
-inf
-0.9768580124198111
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.007592525594224025
0.04929940629356765
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.007592525594224025
0.04929940629356765
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.007592525594224025
0.04929940629356765
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
2.1MiB live, 2.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.007592525594224025
0.04929940629356765
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.007592525594224025
0.04929940629356765
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.007592525594224025
0.04381376584432122
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.007592525594224025
0.04381376584432122
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.007592525594224025
0.04381376584432122
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.007592525594224025
0.04381376584432122
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.0
+inf
0.0ms
-0.007592525594224025
0.04929940629356765
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

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

Compiled 14 to 15 computations (-7.1% saved)

simplify31.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0105963
1129963
2131963
3132963
Stop Event
saturated
Calls
Call 1
Inputs
(*.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 (cosh.f64 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 9007199254740991/9007199254740992 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -inf.0 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (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 9007199254740991/9007199254740992 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -inf.0 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (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 9007199254740991/9007199254740992 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/1152921504606846976 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 (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/1152921504606846976 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 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/1152921504606846976 binary64)) #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)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/1152921504606846976 binary64)) #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)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) #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/1152921504606846976 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/1152921504606846976 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
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (cos.f64 re) (cosh.f64 im))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -inf.0 binary64)) (*.f64 (cosh.f64 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 9007199254740991/9007199254740992 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal -inf.0 binary64)) (*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (cosh.f64 im)) (if (<=.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 9007199254740991/9007199254740992 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 9007199254740991/9007199254740992 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 (cosh.f64 im) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #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 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 9007199254740991/9007199254740992 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 9007199254740991/9007199254740992 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #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 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal 9007199254740991/9007199254740992 binary64)) #s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re)) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/1152921504606846976 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 (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal -5764607523034235/1152921504606846976 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)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/1152921504606846976 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 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal -5764607523034235/1152921504606846976 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)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/1152921504606846976 binary64)) #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)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal -5764607523034235/1152921504606846976 binary64)) #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)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/1152921504606846976 binary64)) #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)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal -5764607523034235/1152921504606846976 binary64)) #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)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1 (cosh im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (cos re) #s(literal 1 binary64))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(literal -1/4 binary64) (*.f64 re re)))) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
(if (<=.f64 (cos.f64 re) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (+ (exp (neg im)) (exp im)) #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/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 #s(literal -1/4 binary64) (*.f64 re re)))) #s(approx (+ (exp (neg im)) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im)))) (*.f64 #s(approx (* 1/2 (cos re)) #s(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/1152921504606846976 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/1152921504606846976 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 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #s(literal -5764607523034235/1152921504606846976 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 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #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 im) (exp.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) #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
8.6MiB live, 1 163.3MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02773284
18733008
226962876
361272837
084572662
01472676
14412521
212432487
335682402
080162268
01028
01728
14724
228522
3248522
0903422
0119655
1346623
21071613
33276596
47351596
57956596
08023556
031178
046174
1154160
2922160
08359160
01792960
15342805
215242757
345782672
082912517
Stop Event
fuel
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 1 347 to 721 computations (46.5% saved)

preprocess224.0ms (2.5%)

Memory
-2.5MiB live, 192.8MiB allocated
Remove

(abs re)

(abs im)

Compiler

Compiled 1 288 to 240 computations (81.4% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...