math.cos on complex, real part

Time bar (total: 3.7s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage

analyze0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 13 to 12 computations (7.7% saved)

sample1.2s (32.9%)

Memory
37.4MiB live, 1 580.6MiB allocated; 367ms collecting garbage
Samples
892.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 605.0ms
ival-cos: 266.0ms (44% of total)
ival-exp: 109.0ms (18% of total)
ival-add!: 98.0ms (16.2% of total)
ival-mult!: 88.0ms (14.5% of total)
ival-neg: 43.0ms (7.1% of total)
adjust: 2.0ms (0.3% of total)
Bogosity

preprocess39.0ms (1.1%)

Memory
-33.0MiB live, 10.7MiB allocated; 8ms collecting garbage
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02668
111266
232066
3122238
4732438
Stop Event
node-limit
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)))
Symmetry

(abs re)

(abs im)

Compiler

Compiled 20 to 20 computations (0% saved)

series8.0ms (0.2%)

Memory
12.1MiB live, 12.1MiB allocated; 0ms collecting garbage
Counts
10 → 40
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
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (exp (neg im))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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)))))))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 1/2))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))))
#s(approx (cos re) #s(hole binary64 1))
#s(approx (cos re) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))))
#s(approx re #s(hole binary64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 2))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))))
#s(approx (exp (neg im)) #s(hole binary64 1))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))))
#s(approx (neg im) #s(hole binary64 (* -1 im)))
#s(approx im #s(hole binary64 im))
#s(approx (exp im) #s(hole binary64 1))
#s(approx (exp im) #s(hole binary64 (+ 1 im)))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* 1/2 im))))))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 (+ (exp im) (exp (neg im)))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (neg im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 (+ (exp im) (exp (* -1 im)))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (* -1 im))))
Calls

6 calls:

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

rewrite202.0ms (5.5%)

Memory
11.3MiB live, 240.4MiB allocated; 42ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0168681
0178612
11019550
08541512
Stop Event
iter-limit
node-limit
iter-limit
Counts
50 → 132
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)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (exp (neg im))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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)))))))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 1/2))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))))
#s(approx (cos re) #s(hole binary64 1))
#s(approx (cos re) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))))
#s(approx re #s(hole binary64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 2))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))))
#s(approx (exp (neg im)) #s(hole binary64 1))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))))
#s(approx (neg im) #s(hole binary64 (* -1 im)))
#s(approx im #s(hole binary64 im))
#s(approx (exp im) #s(hole binary64 1))
#s(approx (exp im) #s(hole binary64 (+ 1 im)))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* 1/2 im))))))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 (+ (exp im) (exp (neg im)))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (neg im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))))
#s(approx (+ (exp (neg im)) (exp im)) #s(hole binary64 (+ (exp im) (exp (* -1 im)))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (* -1 im))))
Outputs
(*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (cosh.f64 im))
(*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 im)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 im)))
(/.f64 (-.f64 (*.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))) (*.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))) (-.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)))) (-.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))))
(/.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) #s(literal 3 binary64))) (fma.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (-.f64 (*.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))) (*.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))) (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))))))
(neg.f64 (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 im)) #s(literal -1/2 binary64)))
(neg.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 re) #s(literal 2 binary64)) (cosh.f64 im))))
(fma.f64 (*.f64 (exp.f64 (neg.f64 im)) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 re) (exp.f64 (neg.f64 im))) #s(literal 1/2 binary64)))
(fma.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 im) (cos.f64 re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (exp.f64 im)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (exp.f64 (neg.f64 im)))))
(-.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(-.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)) (exp.f64 im)))
(+.f64 (*.f64 (*.f64 (cos.f64 re) (exp.f64 im)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (cos.f64 re) (exp.f64 (neg.f64 im))) #s(literal 1/2 binary64)))
(+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 im) (cos.f64 re))) (*.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re))))
(+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (exp.f64 im))) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (cos.f64 re)))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(neg.f64 (*.f64 (cos.f64 re) #s(literal -1/2 binary64)))
(neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)))
#s(literal 1/2 binary64)
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 re (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
re
(*.f64 #s(literal 2 binary64) (cosh.f64 im))
(/.f64 (neg.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (exp.f64 (+.f64 im im)))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(/.f64 (neg.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (neg.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (expm1.f64 (+.f64 im im)))))
(/.f64 (neg.f64 (+.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))))) (neg.f64 (+.f64 (exp.f64 (+.f64 im im)) (expm1.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (exp.f64 (+.f64 im im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(/.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64)))) (+.f64 (exp.f64 (+.f64 im im)) (expm1.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (exp.f64 im))
(-.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (sinh.f64 im))
(-.f64 (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(-.f64 (/.f64 (exp.f64 (+.f64 im im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(-.f64 (cosh.f64 im) (-.f64 (sinh.f64 im) (exp.f64 im)))
(+.f64 (+.f64 (exp.f64 im) (cosh.f64 im)) (sinh.f64 (neg.f64 im)))
(+.f64 (+.f64 (exp.f64 (neg.f64 im)) (cosh.f64 im)) (sinh.f64 im))
(+.f64 (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (expm1.f64 (+.f64 im im)))) (/.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (expm1.f64 (+.f64 im im)))))
(+.f64 (/.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (+.f64 (exp.f64 (+.f64 im im)) (expm1.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))) (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 (exp.f64 (+.f64 im im)) (expm1.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))))
(+.f64 (cosh.f64 im) (+.f64 (sinh.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (cosh.f64 im) (+.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (cosh.f64 im) (cosh.f64 im))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))))
(pow.f64 (exp.f64 #s(literal -1 binary64)) im)
(pow.f64 (exp.f64 im) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (cosh.f64 im) (cosh.f64 im)) (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im)))) (-.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (fma.f64 (sinh.f64 im) (sinh.f64 im) (*.f64 (cosh.f64 im) (sinh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(/.f64 #s(literal 1 binary64) (exp.f64 im))
(neg.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)))
(-.f64 (cosh.f64 im) (sinh.f64 im))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal -1 binary64))) im))
(exp.f64 (neg.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(*.f64 #s(literal -1 binary64) im)
(*.f64 #s(literal 1 binary64) (neg.f64 im))
(*.f64 im #s(literal -1 binary64))
(neg.f64 (*.f64 #s(literal -1 binary64) (neg.f64 im)))
(neg.f64 im)
im
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 im) (sinh.f64 im)) (*.f64 (cosh.f64 im) (sinh.f64 im)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(exp.f64 im)
(+.f64 (cosh.f64 im) (sinh.f64 im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 #s(literal 1 binary64) (cosh.f64 im) (*.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))) re) re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))) re) re) re) re)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (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 (* 1/2 (cos re)) (fma.f64 (*.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)) re) re #s(literal 1/2 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
#s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64)))
#s(approx re re)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)))
#s(approx (* 1/2 (cos re)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
#s(approx (cos re) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (fma.f64 (*.f64 im #s(literal 1/2 binary64)) im #s(literal 1 binary64)) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (fma.f64 (fma.f64 (*.f64 im #s(literal 1/2 binary64)) im #s(literal 1 binary64)) (cos.f64 re) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))) im) im) im) im)))
#s(approx (+ (exp (neg im)) (exp im)) #s(literal 2 binary64))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 (fma.f64 #s(literal 1/12 binary64) (*.f64 im im) #s(literal 1 binary64)) (*.f64 im im) #s(literal 2 binary64)))
#s(approx (+ (exp (neg im)) (exp im)) (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (*.f64 im im) #s(literal 1 binary64)) im) im #s(literal 2 binary64)))
#s(approx (exp (neg im)) #s(literal 1 binary64))
#s(approx (exp (neg im)) (-.f64 #s(literal 1 binary64) im))
#s(approx (exp (neg im)) (fma.f64 (fma.f64 im #s(literal 1/2 binary64) #s(literal -1 binary64)) im #s(literal 1 binary64)))
#s(approx (exp (neg 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)))
#s(approx (neg im) (neg.f64 im))
#s(approx im im)
#s(approx (exp im) #s(literal 1 binary64))
#s(approx (exp im) (-.f64 im #s(literal -1 binary64)))
#s(approx (exp im) (fma.f64 (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) im #s(literal 1 binary64)))
#s(approx (exp 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)))
#s(approx (+ (exp (neg im)) (exp im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
#s(approx (exp (neg im)) (exp.f64 (neg.f64 im)))
#s(approx (exp im) (exp.f64 im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re)))
#s(approx (+ (exp (neg im)) (exp im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
#s(approx (exp (neg im)) (exp.f64 (neg.f64 im)))

eval56.0ms (1.5%)

Memory
-13.7MiB live, 46.6MiB allocated; 9ms collecting garbage
Compiler

Compiled 1 183 to 476 computations (59.8% saved)

prune7.0ms (0.2%)

Memory
28.6MiB live, 28.6MiB allocated; 0ms collecting garbage
Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1129121
Fresh000
Picked101
Done000
Total1139122
Accuracy
100.0%
Counts
122 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
100.0%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
100.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (exp.f64 im)))
54.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (/.f64 (+.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64)))) (+.f64 (exp.f64 (+.f64 im im)) (expm1.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))))
54.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (/.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (+.f64 (exp.f64 (+.f64 im im)) (expm1.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))) (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 (exp.f64 (+.f64 im im)) (expm1.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))))
77.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
66.1%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
67.2%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
54.7%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
Compiler

Compiled 284 to 258 computations (9.2% saved)

series67.0ms (1.8%)

Memory
11.1MiB live, 145.5MiB allocated; 13ms collecting garbage
Counts
24 → 98
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(cos.f64 re)
re
(fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (exp.f64 im))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64)))
(exp.f64 #s(literal -1 binary64))
#s(literal -1 binary64)
(/.f64 im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
#s(literal 1 binary64)
(cosh.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(neg.f64 im)
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2)))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* 1/48 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/48 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 1/2))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))))
#s(approx (cos re) #s(hole binary64 1))
#s(approx (cos re) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))))
#s(approx re #s(hole binary64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (exp (neg im))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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)))))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole 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))))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole 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)))))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (* 1/2 (exp (neg im))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (* -1/4 (exp (neg im)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (exp (neg im))))))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (exp im)) (* -1/1440 (exp (neg im)))))))))))))))
#s(approx (* (cos re) 1/2) #s(hole binary64 1/2))
#s(approx (* (cos re) 1/2) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* (cos re) 1/2) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))))
#s(approx (* (cos re) 1/2) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (* 1/2 (exp (neg im)))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (exp (neg im)))) (* 1/2 (exp (neg im))))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp (neg im))) (* 1/48 (* (pow re 2) (exp (neg im)))))))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (exp (neg im)))) (* 1/48 (exp (neg im))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))))
#s(approx (* (cos re) 1/2) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (* 1/2 (* (cos re) (exp (neg im))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 2))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))))
#s(approx (pow (exp -1) (/ im 2)) #s(hole binary64 1))
#s(approx (pow (exp -1) (/ im 2)) #s(hole binary64 (+ 1 (* -1/2 im))))
#s(approx (pow (exp -1) (/ im 2)) #s(hole binary64 (+ 1 (* im (- (* 1/8 im) 1/2)))))
#s(approx (pow (exp -1) (/ im 2)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/8 (* -1/48 im))) 1/2)))))
#s(approx (/ im 2) #s(hole binary64 (* 1/2 im)))
#s(approx im #s(hole binary64 im))
#s(approx (exp im) #s(hole binary64 1))
#s(approx (exp im) #s(hole binary64 (+ 1 im)))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* 1/2 im))))))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (* 1 (cosh im)) #s(hole binary64 1))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* 1/2 (pow im 2)))))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))
#s(approx (cosh im) #s(hole binary64 1))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* 1/2 (pow im 2)))))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (cos re)))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (cos re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* -1/2 (* im (cos re))) (* 1/2 (cos re)))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* 1/2 (cos re)) (* im (+ (* -1/2 (cos re)) (* 1/4 (* im (cos re))))))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* 1/2 (cos re)) (* im (+ (* -1/2 (cos re)) (* im (+ (* -1/12 (* im (cos re))) (* 1/4 (cos re)))))))))
#s(approx (exp (neg im)) #s(hole binary64 1))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))))
#s(approx (neg im) #s(hole binary64 (* -1 im)))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ (exp im) (pow (exp (* -1/2 im)) 2))))
#s(approx (pow (exp -1) (/ im 2)) #s(hole binary64 (exp (* -1/2 im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (* 1 (cosh im)) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (cosh im) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (neg im))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (* 1/2 (* (cos re) (exp (* -1 im))))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (* -1 im))))
Calls

6 calls:

TimeVariablePointExpression
30.0ms
re
@inf
((* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (* 1/2 (cos re)) 1/2 (cos re) re (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (pow (exp -1) (/ im 2)) (exp -1) -1 (/ im 2) im 2 (exp im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1 (cosh im)) 1 (cosh im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* (* 1 (cosh im)) (cos re)) (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (* (cos re) 1/2) (* (* (cos re) 1/2) (exp (neg im))) (exp (neg im)) (neg im))
12.0ms
re
@-inf
((* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (* 1/2 (cos re)) 1/2 (cos re) re (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (pow (exp -1) (/ im 2)) (exp -1) -1 (/ im 2) im 2 (exp im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1 (cosh im)) 1 (cosh im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* (* 1 (cosh im)) (cos re)) (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (* (cos re) 1/2) (* (* (cos re) 1/2) (exp (neg im))) (exp (neg im)) (neg im))
9.0ms
im
@0
((* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (* 1/2 (cos re)) 1/2 (cos re) re (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (pow (exp -1) (/ im 2)) (exp -1) -1 (/ im 2) im 2 (exp im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1 (cosh im)) 1 (cosh im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* (* 1 (cosh im)) (cos re)) (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (* (cos re) 1/2) (* (* (cos re) 1/2) (exp (neg im))) (exp (neg im)) (neg im))
6.0ms
re
@0
((* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (* 1/2 (cos re)) 1/2 (cos re) re (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (pow (exp -1) (/ im 2)) (exp -1) -1 (/ im 2) im 2 (exp im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1 (cosh im)) 1 (cosh im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* (* 1 (cosh im)) (cos re)) (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (* (cos re) 1/2) (* (* (cos re) 1/2) (exp (neg im))) (exp (neg im)) (neg im))
4.0ms
im
@inf
((* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (* 1/2 (cos re)) 1/2 (cos re) re (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (pow (exp -1) (/ im 2)) (exp -1) -1 (/ im 2) im 2 (exp im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* 1 (cosh im)) 1 (cosh im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (* (* 1 (cosh im)) (cos re)) (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (* (cos re) 1/2) (* (* (cos re) 1/2) (exp (neg im))) (exp (neg im)) (neg im))

rewrite216.0ms (5.9%)

Memory
-30.6MiB live, 264.1MiB allocated; 45ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04022407
04332076
125562044
089791942
Stop Event
iter-limit
node-limit
iter-limit
Counts
122 → 237
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(cos.f64 re)
re
(fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (exp.f64 im))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64)))
(exp.f64 #s(literal -1 binary64))
#s(literal -1 binary64)
(/.f64 im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
#s(literal 1 binary64)
(cosh.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(neg.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2)))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* 1/48 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/48 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 1/2))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))))
#s(approx (cos re) #s(hole binary64 1))
#s(approx (cos re) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))))
#s(approx re #s(hole binary64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (exp (neg im))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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)))))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole 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))))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole 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)))))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (* 1/2 (exp (neg im))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (* -1/4 (exp (neg im)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (exp (neg im))))))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (exp im)) (* -1/1440 (exp (neg im)))))))))))))))
#s(approx (* (cos re) 1/2) #s(hole binary64 1/2))
#s(approx (* (cos re) 1/2) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* (cos re) 1/2) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))))
#s(approx (* (cos re) 1/2) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (* 1/2 (exp (neg im)))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (exp (neg im)))) (* 1/2 (exp (neg im))))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp (neg im))) (* 1/48 (* (pow re 2) (exp (neg im)))))))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (exp (neg im)))) (* 1/48 (exp (neg im))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))))
#s(approx (* (cos re) 1/2) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (* 1/2 (* (cos re) (exp (neg im))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 2))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))))
#s(approx (pow (exp -1) (/ im 2)) #s(hole binary64 1))
#s(approx (pow (exp -1) (/ im 2)) #s(hole binary64 (+ 1 (* -1/2 im))))
#s(approx (pow (exp -1) (/ im 2)) #s(hole binary64 (+ 1 (* im (- (* 1/8 im) 1/2)))))
#s(approx (pow (exp -1) (/ im 2)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/8 (* -1/48 im))) 1/2)))))
#s(approx (/ im 2) #s(hole binary64 (* 1/2 im)))
#s(approx im #s(hole binary64 im))
#s(approx (exp im) #s(hole binary64 1))
#s(approx (exp im) #s(hole binary64 (+ 1 im)))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* 1/2 im))))))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (* 1 (cosh im)) #s(hole binary64 1))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* 1/2 (pow im 2)))))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))
#s(approx (cosh im) #s(hole binary64 1))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* 1/2 (pow im 2)))))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (cos re)))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (cos re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* -1/2 (* im (cos re))) (* 1/2 (cos re)))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* 1/2 (cos re)) (* im (+ (* -1/2 (cos re)) (* 1/4 (* im (cos re))))))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (+ (* 1/2 (cos re)) (* im (+ (* -1/2 (cos re)) (* im (+ (* -1/12 (* im (cos re))) (* 1/4 (cos re)))))))))
#s(approx (exp (neg im)) #s(hole binary64 1))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))))
#s(approx (neg im) #s(hole binary64 (* -1 im)))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ (exp im) (pow (exp (* -1/2 im)) 2))))
#s(approx (pow (exp -1) (/ im 2)) #s(hole binary64 (exp (* -1/2 im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (* 1 (cosh im)) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (cosh im) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (neg im))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) #s(hole binary64 (* 1/2 (* (cos re) (exp (* -1 im))))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (* -1 im))))
Outputs
(*.f64 (+.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (+.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im))))
(/.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64)) (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (-.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64))))) #s(literal 3 binary64)) (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64))))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64))))) (-.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64))))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))))))
(fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64))))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 re (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
re
(/.f64 (+.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (pow.f64 (exp.f64 #s(literal -2 binary64)) (*.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 3 binary64)))) (+.f64 (exp.f64 (+.f64 im im)) (-.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (+.f64 im im) #s(literal 2 binary64))) (*.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (+.f64 im im) #s(literal 2 binary64))) (exp.f64 (+.f64 im im)))) (neg.f64 (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (*.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (neg.f64 (+.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (+.f64 im im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (+.f64 im im) #s(literal 2 binary64))) (exp.f64 (+.f64 im im))) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im)))
(/.f64 (+.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (*.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (+.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (+.f64 im im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im)))))
(fma.f64 (neg.f64 (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))))) (neg.f64 (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))))) (exp.f64 im))
(fma.f64 (pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(literal 1 binary64)) (pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(literal 1 binary64)) (exp.f64 im))
(fma.f64 (pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(literal 1 binary64)) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 im))
(fma.f64 (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64))))) (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64))))) (exp.f64 im))
(fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 im))
(-.f64 (/.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (+.f64 im im) #s(literal 2 binary64))) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im))) (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im))))
(+.f64 (/.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (*.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (+.f64 im im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im))))) (/.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (+.f64 (pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (+.f64 im im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im))))))
(+.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))) (exp.f64 im))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))))
(*.f64 (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))) (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))))
(*.f64 (fabs.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))) (fabs.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))))
(*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))))
(pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (+.f64 (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64)))
(sqrt.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64)))))
(fabs.f64 (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64))))))
(fabs.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))))
(exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64))))
(+.f64 (cosh.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (sinh.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 #s(literal -1 binary64)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 #s(literal 1 binary64)) (cosh.f64 #s(literal 1 binary64)) (-.f64 (*.f64 (sinh.f64 #s(literal -1 binary64)) (sinh.f64 #s(literal -1 binary64))) (*.f64 (cosh.f64 #s(literal 1 binary64)) (sinh.f64 #s(literal -1 binary64))))))
(/.f64 #s(literal 1 binary64) (exp.f64 #s(literal 1 binary64)))
(-.f64 (cosh.f64 #s(literal 1 binary64)) (sinh.f64 #s(literal 1 binary64)))
(exp.f64 #s(literal -1 binary64))
(+.f64 (cosh.f64 #s(literal 1 binary64)) (sinh.f64 #s(literal -1 binary64)))
#s(literal -1 binary64)
(/.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(/.f64 (neg.f64 im) #s(literal -2 binary64))
(/.f64 im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 im) (sinh.f64 im)) (*.f64 (cosh.f64 im) (sinh.f64 im)))))
(fma.f64 (cosh.f64 im) #s(literal 1 binary64) (sinh.f64 im))
(fma.f64 #s(literal 1 binary64) (cosh.f64 im) (sinh.f64 im))
(exp.f64 im)
(+.f64 (cosh.f64 im) (sinh.f64 im))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
(*.f64 (cosh.f64 im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -2 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64)) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))
(cosh.f64 (neg.f64 (neg.f64 im)))
(cosh.f64 (neg.f64 im))
(cosh.f64 im)
(+.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
#s(literal 1 binary64)
(*.f64 (cosh.f64 im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -2 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64)) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))
(cosh.f64 (neg.f64 (neg.f64 im)))
(cosh.f64 (neg.f64 im))
(cosh.f64 im)
(+.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cos.f64 re))
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 im) (cos.f64 re)))
(*.f64 (cos.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (cos.f64 re)))
(/.f64 (fma.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64))) (-.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)))))))
(fma.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (exp.f64 im) (cos.f64 re)) #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (cos.f64 re) (*.f64 (exp.f64 (neg.f64 im)) #s(literal 1/2 binary64)) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (cos.f64 re) (*.f64 (exp.f64 im) #s(literal 1/2 binary64)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 im) (cos.f64 re)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(-.f64 (/.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))) (/.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (-.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))))
(-.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (exp.f64 (neg.f64 im))))
(-.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 #s(literal -1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re))))
(+.f64 (/.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))))) (/.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))))))
(+.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(*.f64 (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)))
(*.f64 (cos.f64 re) (*.f64 (exp.f64 (neg.f64 im)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (exp.f64 (neg.f64 im)) (cos.f64 re)))
(pow.f64 (exp.f64 im) #s(literal -1 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) im)
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 im))))
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 im) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (exp.f64 im))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(fma.f64 (cosh.f64 im) #s(literal 1 binary64) (sinh.f64 (neg.f64 im)))
(fma.f64 #s(literal 1 binary64) (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(-.f64 (cosh.f64 im) (sinh.f64 im))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(exp.f64 (*.f64 (log.f64 (exp.f64 im)) #s(literal -1 binary64)))
(exp.f64 (neg.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(*.f64 im #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) im)
(neg.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (fma.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) (*.f64 #s(literal -1/4 binary64) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)))) (*.f64 re re))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (fma.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal -1/4 binary64) (*.f64 (fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) (*.f64 #s(literal 1/48 binary64) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)))) (*.f64 re re))) (*.f64 re re))))
#s(approx (* (cos re) 1/2) #s(literal 1/2 binary64))
#s(approx (* (cos re) 1/2) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (* (cos re) 1/2) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
#s(approx (* (cos re) 1/2) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
#s(approx (cos re) #s(literal 1 binary64))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx re re)
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -1/4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 1/48 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -1/1440 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/48 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -1/4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 1/48 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -1/1440 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/48 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64)) (*.f64 re re))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/48 binary64)) (*.f64 re re))) (*.f64 re re))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/48 binary64) (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (*.f64 re re))) (*.f64 re re))) (*.f64 re re))))
#s(approx (* (cos re) 1/2) #s(literal 1/2 binary64))
#s(approx (* (cos re) 1/2) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (* (cos re) 1/2) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
#s(approx (* (cos re) 1/2) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) (*.f64 (exp.f64 (neg.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) (fma.f64 (*.f64 (*.f64 re re) (exp.f64 (neg.f64 im))) #s(literal -1/4 binary64) (*.f64 (exp.f64 (neg.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) (fma.f64 (fma.f64 (*.f64 (*.f64 re re) (exp.f64 (neg.f64 im))) #s(literal 1/48 binary64) (*.f64 #s(literal -1/4 binary64) (exp.f64 (neg.f64 im)))) (*.f64 re re) (*.f64 (exp.f64 (neg.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 re re) (exp.f64 (neg.f64 im))) #s(literal -1/1440 binary64) (*.f64 #s(literal 1/48 binary64) (exp.f64 (neg.f64 im)))) (*.f64 re re) (*.f64 #s(literal -1/4 binary64) (exp.f64 (neg.f64 im)))) (*.f64 re re) (*.f64 (exp.f64 (neg.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im))))
#s(approx (* (cos re) 1/2) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
#s(approx (cos re) (cos.f64 re))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (* (* 1 (cosh im)) (cos re)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (* (cos re) 1/2) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (cos.f64 re) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal 1/24 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(literal 2 binary64))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 (fma.f64 #s(literal 1/12 binary64) (*.f64 im im) #s(literal 1 binary64)) (*.f64 im im) #s(literal 2 binary64)))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (*.f64 im im) #s(literal 1 binary64)) (*.f64 im im) #s(literal 2 binary64)))
#s(approx (pow (exp -1) (/ im 2)) #s(literal 1 binary64))
#s(approx (pow (exp -1) (/ im 2)) (fma.f64 #s(literal -1/2 binary64) im #s(literal 1 binary64)))
#s(approx (pow (exp -1) (/ im 2)) (fma.f64 (-.f64 (*.f64 #s(literal 1/8 binary64) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64)))
#s(approx (pow (exp -1) (/ im 2)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) im #s(literal 1/8 binary64)) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64)))
#s(approx (/ im 2) (*.f64 im #s(literal 1/2 binary64)))
#s(approx im im)
#s(approx (exp im) #s(literal 1 binary64))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
#s(approx (exp im) (fma.f64 (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) im #s(literal 1 binary64)))
#s(approx (exp 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)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cos.f64 re))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (cos.f64 re) (cos.f64 re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal 1/24 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* 1 (cosh im)) #s(literal 1 binary64))
#s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
#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 (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (* 1 (cosh im)) #s(literal 1 binary64))
#s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
#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 (* 1 (cosh im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (cos.f64 re) (cos.f64 re)))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal 1/24 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cos.f64 re))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 (cos.f64 re) #s(literal 0 binary64)) im (cos.f64 re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 im (fma.f64 (cos.f64 re) #s(literal 0 binary64) (*.f64 (*.f64 (cos.f64 re) im) #s(literal 1/2 binary64))) (cos.f64 re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 im (fma.f64 (cos.f64 re) #s(literal 0 binary64) (*.f64 (fma.f64 (*.f64 (cos.f64 re) #s(literal 0 binary64)) im (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) im)) (cos.f64 re)))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) (fma.f64 (*.f64 (cos.f64 re) im) #s(literal -1/2 binary64) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) (fma.f64 (cos.f64 re) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 (cos.f64 re) im) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 re))) im)))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) (fma.f64 (cos.f64 re) #s(literal 1/2 binary64) (*.f64 (fma.f64 (cos.f64 re) #s(literal -1/2 binary64) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 (cos.f64 re) im) (*.f64 #s(literal 1/4 binary64) (cos.f64 re))) im)) im)))
#s(approx (exp (neg im)) #s(literal 1 binary64))
#s(approx (exp (neg im)) (+.f64 (neg.f64 im) #s(literal 1 binary64)))
#s(approx (exp (neg im)) (fma.f64 (-.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) im #s(literal 1 binary64)))
#s(approx (exp (neg im)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) im #s(literal 1/2 binary64)) im) #s(literal 1 binary64)) im #s(literal 1 binary64)))
#s(approx (neg im) (neg.f64 im))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)))
#s(approx (pow (exp -1) (/ im 2)) (exp.f64 (*.f64 #s(literal -1/2 binary64) im)))
#s(approx (exp im) (exp.f64 im))
#s(approx (* 1 (cosh im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* 1 (cosh im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (exp (neg im)) (exp.f64 (neg.f64 im)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (* (* (cos re) 1/2) (exp (neg im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
#s(approx (exp (neg im)) (exp.f64 (neg.f64 im)))

eval35.0ms (1%)

Memory
-10.9MiB live, 78.6MiB allocated; 8ms collecting garbage
Compiler

Compiled 3 016 to 874 computations (71% saved)

prune12.0ms (0.3%)

Memory
27.8MiB live, 27.8MiB allocated; 0ms collecting garbage
Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New27614290
Fresh404
Picked415
Done000
Total28415299
Accuracy
100.0%
Counts
299 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(approx (exp (neg im)) (fma.f64 (-.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) im #s(literal 1 binary64)))))
66.1%
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
71.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) #s(approx (pow (exp -1) (/ im 2)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) im #s(literal 1/8 binary64)) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64))) (exp.f64 im)))
99.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) #s(approx (pow (exp -1) (/ im 2)) (fma.f64 #s(literal -1/2 binary64) im #s(literal 1 binary64))) (exp.f64 im)))
100.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 im)))
77.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
100.0%
(*.f64 (cosh.f64 im) (cos.f64 re))
67.2%
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
34.7%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64)))))
54.7%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
50.2%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
33.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
40.8%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.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))))
39.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
37.8%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
Compiler

Compiled 504 to 472 computations (6.3% saved)

series39.0ms (1.1%)

Memory
-29.6MiB live, 31.4MiB allocated; 4ms collecting garbage
Counts
25 → 91
Calls
Call 1
Inputs
(*.f64 (cosh.f64 im) (cos.f64 re))
(cosh.f64 im)
im
(cos.f64 re)
re
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* 1 (cosh im)) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 re re)
#s(literal -1/2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 im))
(exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64))))
(*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))
#s(literal -1 binary64)
(/.f64 im #s(literal 2 binary64))
#s(literal 2 binary64)
(exp.f64 im)
Outputs
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))
#s(approx (* (cosh im) (cos re)) #s(hole 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))))))))))
#s(approx (* (cosh im) (cos re)) #s(hole 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)))))))))))
#s(approx (cos re) #s(hole binary64 1))
#s(approx (cos re) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))))
#s(approx re #s(hole binary64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (exp (neg im))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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)))))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (* 1/2 (exp (neg im))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (* -1/4 (exp (neg im)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (exp (neg im))))))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (exp im)) (* -1/1440 (exp (neg im)))))))))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole 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))))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole 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)))))))))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2)))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* 1/48 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/48 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 1/2))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (* -1/2 (pow re 2))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (* (pow re 2) (- (/ 1 (pow re 2)) 1/2))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (cos re)))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (cosh im) #s(hole binary64 1))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* 1/2 (pow im 2)))))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))
#s(approx im #s(hole binary64 im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (* 1 (cosh im)) #s(hole binary64 1))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* 1/2 (pow im 2)))))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (cos re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (cos re)))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(hole binary64 2))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 1))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* -1/2 im))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* im (- (* 1/8 im) 1/2)))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/8 (* -1/48 im))) 1/2)))))
#s(approx (* -1 (/ im 2)) #s(hole binary64 (* -1/2 im)))
#s(approx (/ im 2) #s(hole binary64 (* 1/2 im)))
#s(approx (exp im) #s(hole binary64 1))
#s(approx (exp im) #s(hole binary64 (+ 1 im)))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* 1/2 im))))))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))))
#s(approx (cosh im) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (* 1 (cosh im)) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(hole binary64 (+ (exp im) (pow (exp (* -1/2 im)) 2))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (exp (* -1/2 im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))))
Calls

6 calls:

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

rewrite280.0ms (7.6%)

Memory
16.3MiB live, 246.4MiB allocated; 22ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03642369
03881970
122591948
097791854
Stop Event
iter-limit
node-limit
iter-limit
Counts
116 → 221
Calls
Call 1
Inputs
(*.f64 (cosh.f64 im) (cos.f64 re))
(cosh.f64 im)
im
(cos.f64 re)
re
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* 1 (cosh im)) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 re re)
#s(literal -1/2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 im))
(exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64))))
(*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))
#s(literal -1 binary64)
(/.f64 im #s(literal 2 binary64))
#s(literal 2 binary64)
(exp.f64 im)
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))
#s(approx (* (cosh im) (cos re)) #s(hole 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))))))))))
#s(approx (* (cosh im) (cos re)) #s(hole 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)))))))))))
#s(approx (cos re) #s(hole binary64 1))
#s(approx (cos re) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))))
#s(approx re #s(hole binary64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (exp (neg im))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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)))))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (* 1/2 (exp (neg im))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (* -1/4 (exp (neg im)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (* 1/48 (exp (neg im))))))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (exp im)) (+ (* 1/2 (exp (neg im))) (* (pow re 2) (+ (* -1/4 (exp im)) (+ (* -1/4 (exp (neg im))) (* (pow re 2) (+ (* 1/48 (exp im)) (+ (* 1/48 (exp (neg im))) (* (pow re 2) (+ (* -1/1440 (exp im)) (* -1/1440 (exp (neg im)))))))))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (/ 1 (exp im))))) (* 1/2 (+ (exp im) (/ 1 (exp im)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole 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))))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole 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)))))))))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2)))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* 1/48 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/48 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 1/2))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (neg im)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (/ 1 (exp im)))))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (* -1/2 (pow re 2))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (* (pow re 2) (- (/ 1 (pow re 2)) 1/2))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (cos re)))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (cosh im) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (cosh im) #s(hole binary64 1))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* 1/2 (pow im 2)))))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))
#s(approx (cosh im) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))
#s(approx im #s(hole binary64 im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (* 1 (cosh im)) #s(hole binary64 1))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* 1/2 (pow im 2)))))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* 1/24 (pow im 2)))))))
#s(approx (* 1 (cosh im)) #s(hole binary64 (+ 1 (* (pow im 2) (+ 1/2 (* (pow im 2) (+ 1/24 (* 1/720 (pow im 2)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (cos re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (* 1/2 (cos re)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* 1/2 (* im (cos re)))))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (cos re) (* im (+ (* -1/2 (cos re)) (+ (* 1/2 (cos re)) (* im (+ (* 1/2 (cos re)) (* im (+ (* -1/12 (cos re)) (* 1/12 (cos re))))))))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (cos re)))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1 (cosh im)) (cos re)) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(hole binary64 2))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 1))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* -1/2 im))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* im (- (* 1/8 im) 1/2)))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/8 (* -1/48 im))) 1/2)))))
#s(approx (* -1 (/ im 2)) #s(hole binary64 (* -1/2 im)))
#s(approx (/ im 2) #s(hole binary64 (* 1/2 im)))
#s(approx (exp im) #s(hole binary64 1))
#s(approx (exp im) #s(hole binary64 (+ 1 im)))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* 1/2 im))))))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))))
#s(approx (cosh im) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (* 1 (cosh im)) #s(hole binary64 (* 1/2 (+ (exp im) (/ 1 (exp im))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(hole binary64 (+ (exp im) (pow (exp (* -1/2 im)) 2))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (exp (* -1/2 im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(hole binary64 (+ (* 1/2 (* (cos re) (exp im))) (* 1/2 (* (cos re) (exp (* -1 im)))))))
Outputs
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 #s(literal 1 binary64) (*.f64 (cosh.f64 im) (cos.f64 re)))
(*.f64 (cos.f64 re) (cosh.f64 im))
(*.f64 (cosh.f64 im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -2 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64)) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))
(cosh.f64 (neg.f64 (neg.f64 im)))
(cosh.f64 (neg.f64 im))
(cosh.f64 im)
(+.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
im
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 re (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
re
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* 1 (cosh im)) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
(*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cosh.f64 im))
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cosh.f64 im)))
(*.f64 (cosh.f64 im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cosh.f64 im))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -2 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64)) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))
(cosh.f64 (neg.f64 (neg.f64 im)))
(cosh.f64 (neg.f64 im))
(cosh.f64 im)
(+.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re re)) (*.f64 #s(literal 1/2 binary64) (*.f64 re re)) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 re re))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (neg.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64)))))
(fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))) (/.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 re re)))
(+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))) (/.f64 (pow.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))))
(+.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))
(*.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)))
(*.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 re)))
(*.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)))
(*.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)))
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 re re)
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 re) #s(literal 2 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 re #s(literal 2 binary64))
(fabs.f64 (*.f64 re re))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))))
#s(literal -1/2 binary64)
(*.f64 (+.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (+.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (exp.f64 im))))
(/.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64)) (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (-.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)))) (-.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))))))
(fma.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(/.f64 (+.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 3 binary64)))) (+.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))) (*.f64 (exp.f64 im) (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))) (exp.f64 (+.f64 im im)))) (neg.f64 (-.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (neg.f64 (+.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (fma.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64) im))))))
(/.f64 (-.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))) (exp.f64 (+.f64 im im))) (-.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (exp.f64 im)))
(/.f64 (+.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (+.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (fma.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64) im)))))
(fma.f64 (neg.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))) (neg.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))) (exp.f64 im))
(fma.f64 (neg.f64 (fabs.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))) (neg.f64 (fabs.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))) (exp.f64 im))
(fma.f64 (fabs.f64 (fabs.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))) (fabs.f64 (fabs.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))) (exp.f64 im))
(fma.f64 (pow.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) #s(literal 1 binary64)) (exp.f64 im))
(fma.f64 (pow.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) #s(literal 1 binary64)) (sqrt.f64 (exp.f64 (neg.f64 im))) (exp.f64 im))
(fma.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))) (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))) (exp.f64 im))
(fma.f64 (fabs.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))) (fabs.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))) (exp.f64 im))
(fma.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) (sqrt.f64 (exp.f64 (neg.f64 im))) (exp.f64 im))
(-.f64 (/.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (exp.f64 im))) (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (exp.f64 im))))
(+.f64 (/.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (fma.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64) im))))) (/.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (+.f64 (exp.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (fma.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64) im))))))
(+.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) (exp.f64 im))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))))
(pow.f64 (exp.f64 (/.f64 im #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64)))
(/.f64 (+.f64 (pow.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (cosh.f64 (/.f64 im #s(literal 2 binary64))) (-.f64 (*.f64 (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64))) (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (*.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)))))))
(/.f64 #s(literal 1 binary64) (exp.f64 (/.f64 im #s(literal 2 binary64))))
(sqrt.f64 (exp.f64 (neg.f64 im)))
(-.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (sinh.f64 (/.f64 im #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal -1 binary64))) (/.f64 im #s(literal 2 binary64))))
(exp.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64))))
(*.f64 (/.f64 im #s(literal 2 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))
(/.f64 (neg.f64 (neg.f64 im)) #s(literal -2 binary64))
(/.f64 (neg.f64 im) #s(literal 2 binary64))
(neg.f64 (/.f64 im #s(literal 2 binary64)))
#s(literal -1 binary64)
(/.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(/.f64 (neg.f64 im) #s(literal -2 binary64))
(/.f64 im #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 im) (sinh.f64 im)) (*.f64 (cosh.f64 im) (sinh.f64 im)))))
(fma.f64 (cosh.f64 im) #s(literal 1 binary64) (sinh.f64 im))
(fma.f64 #s(literal 1 binary64) (cosh.f64 im) (sinh.f64 im))
(exp.f64 im)
(+.f64 (cosh.f64 im) (sinh.f64 im))
#s(approx (* (* 1 (cosh im)) (cos re)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/48 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (cos re) #s(literal 1 binary64))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx re re)
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/48 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64)) (*.f64 re re))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/48 binary64)) (*.f64 re re))) (*.f64 re re))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/48 binary64) (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (*.f64 re re))) (*.f64 re re))) (*.f64 re re))))
#s(approx (* (* 1 (cosh im)) (cos re)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/48 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (+ (* (* re re) -1/2) 1) #s(literal 1 binary64))
#s(approx (+ (* (* re re) -1/2) 1) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (* re re) (*.f64 re re))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) (fma.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) (fma.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal -1/4 binary64) (*.f64 (fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/48 binary64))) (*.f64 re re))) (*.f64 re re))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
#s(approx (* (* 1 (cosh im)) (cos re)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (cos re) (cos.f64 re))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (* (* 1 (cosh im)) (cos re)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))
#s(approx (+ (* (* re re) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im))))
#s(approx (* 1/2 (cos re)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (cos.f64 re) (cos.f64 re)))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal 1/24 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* 1 (cosh im)) #s(literal 1 binary64))
#s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
#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 (* 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 im im)
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cos.f64 re))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (cos.f64 re) (cos.f64 re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal 1/24 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* 1 (cosh im)) #s(literal 1 binary64))
#s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
#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 (* 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) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cos.f64 re))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 (*.f64 (cos.f64 re) #s(literal 0 binary64)) im (cos.f64 re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 im (fma.f64 (cos.f64 re) #s(literal 0 binary64) (*.f64 (*.f64 (cos.f64 re) im) #s(literal 1/2 binary64))) (cos.f64 re)))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (fma.f64 im (fma.f64 (cos.f64 re) #s(literal 0 binary64) (*.f64 (fma.f64 (*.f64 (cos.f64 re) #s(literal 0 binary64)) im (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) im)) (cos.f64 re)))
#s(approx (* (* 1 (cosh im)) (cos re)) (cos.f64 re))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (cos.f64 re) (cos.f64 re)))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1 (cosh im)) (cos re)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal 1/24 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (cos.f64 re) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal 1/24 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) #s(literal 2 binary64))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) (fma.f64 (fma.f64 #s(literal 1/12 binary64) (*.f64 im im) #s(literal 1 binary64)) (*.f64 im im) #s(literal 2 binary64)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (*.f64 im im) #s(literal 1 binary64)) (*.f64 im im) #s(literal 2 binary64)))
#s(approx (exp (* -1 (/ im 2))) #s(literal 1 binary64))
#s(approx (exp (* -1 (/ im 2))) (fma.f64 #s(literal -1/2 binary64) im #s(literal 1 binary64)))
#s(approx (exp (* -1 (/ im 2))) (fma.f64 (-.f64 (*.f64 #s(literal 1/8 binary64) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64)))
#s(approx (exp (* -1 (/ im 2))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) im #s(literal 1/8 binary64)) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64)))
#s(approx (* -1 (/ im 2)) (*.f64 #s(literal -1/2 binary64) im))
#s(approx (/ im 2) (*.f64 #s(literal 1/2 binary64) im))
#s(approx (exp im) #s(literal 1 binary64))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
#s(approx (exp im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64)))
#s(approx (exp 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)))
#s(approx (* 1 (cosh im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* 1 (cosh im)) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (exp (* -1 (/ im 2)))) (exp im)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)))
#s(approx (exp (* -1 (/ im 2))) (exp.f64 (*.f64 #s(literal -1/2 binary64) im)))
#s(approx (exp im) (exp.f64 im))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))

eval30.0ms (0.8%)

Memory
3.7MiB live, 50.1MiB allocated; 3ms collecting garbage
Compiler

Compiled 2 487 to 824 computations (66.9% saved)

prune12.0ms (0.3%)

Memory
18.3MiB live, 18.3MiB allocated; 0ms collecting garbage
Pruning

15 alts after pruning (11 fresh and 4 done)

PrunedKeptTotal
New2335238
Fresh369
Picked235
Done011
Total23815253
Accuracy
100.0%
Counts
253 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(approx (exp (neg im)) (fma.f64 (-.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) im #s(literal 1 binary64)))))
100.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (sqrt.f64 (exp.f64 (neg.f64 im))) (exp.f64 im)))
71.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(approx (exp (* -1 (/ im 2))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) im #s(literal 1/8 binary64)) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64))) (exp.f64 im)))
99.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(approx (exp (* -1 (/ im 2))) (fma.f64 #s(literal -1/2 binary64) im #s(literal 1 binary64))) (exp.f64 im)))
77.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
100.0%
(*.f64 (cosh.f64 im) (cos.f64 re))
66.1%
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
67.2%
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
50.2%
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
34.7%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64)))))
54.7%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
33.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
40.8%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.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))))
39.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
37.8%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
Compiler

Compiled 472 to 444 computations (5.9% saved)

series47.0ms (1.3%)

Memory
-1.5MiB live, 45.6MiB allocated; 2ms collecting garbage
Counts
38 → 119
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (sqrt.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
(fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (sqrt.f64 (exp.f64 (neg.f64 im))) (exp.f64 im))
(exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64))))
(*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))
#s(literal -1 binary64)
(/.f64 im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(sqrt.f64 (exp.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(neg.f64 im)
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 re re)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
#s(literal 1/24 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.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)))
(fma.f64 (-.f64 (*.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 (*.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 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re))
(fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64))
#s(literal -1/720 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im)))))) (* 1/2 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))) (* 1/48 (* (pow re 2) (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im)))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im)))))) (* 1/48 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))))))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 1/2))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))))
#s(approx (cos re) #s(hole binary64 1))
#s(approx (cos re) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))))
#s(approx re #s(hole binary64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (exp (neg im))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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)))))))))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (- (* 1/24 (* re re)) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* 1/24 (* re re)) 1/2) #s(hole binary64 (- (* 1/24 (pow re 2)) 1/2)))
#s(approx (* 1/24 (* re re)) #s(hole binary64 (* 1/24 (pow re 2))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 (- (* 1/24 (pow re 2)) 1/2)))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) #s(hole binary64 (* 1/24 (pow re 2))))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) #s(hole binary64 (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2))))))
#s(approx (+ (* -1/720 (* re re)) 1/24) #s(hole binary64 1/24))
#s(approx (+ (* -1/720 (* re re)) 1/24) #s(hole binary64 (+ 1/24 (* -1/720 (pow re 2)))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2)))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* 1/48 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/48 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (* -1/2 (pow re 2))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (* (pow re 2) (- (/ 1 (pow re 2)) 1/2))))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* 1/24 (pow re 4))))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* (pow re 4) (- 1/24 (* 1/2 (/ 1 (pow re 2)))))))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* (pow re 4) (- (+ 1/24 (/ 1 (pow re 4))) (* 1/2 (/ 1 (pow re 2)))))))
#s(approx (- (* 1/24 (* re re)) 1/2) #s(hole binary64 (* 1/24 (pow re 2))))
#s(approx (- (* 1/24 (* re re)) 1/2) #s(hole binary64 (* (pow re 2) (- 1/24 (* 1/2 (/ 1 (pow re 2)))))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* -1/720 (pow re 6))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* (pow re 6) (- (* 1/24 (/ 1 (pow re 2))) 1/720))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* (pow re 6) (- (* 1/24 (/ 1 (pow re 2))) (+ 1/720 (/ 1/2 (pow re 4)))))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* (pow re 6) (- (+ (* 1/24 (/ 1 (pow re 2))) (/ 1 (pow re 6))) (+ 1/720 (/ 1/2 (pow re 4)))))))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 (* -1/720 (pow re 4))))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 (* (pow re 4) (- (* 1/24 (/ 1 (pow re 2))) 1/720))))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 (* (pow re 4) (- (* 1/24 (/ 1 (pow re 2))) (+ 1/720 (/ 1/2 (pow re 4)))))))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) #s(hole binary64 (* -1/720 (pow re 4))))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) #s(hole binary64 (* (pow re 4) (- (* 1/24 (/ 1 (pow re 2))) 1/720))))
#s(approx (+ (* -1/720 (* re re)) 1/24) #s(hole binary64 (* -1/720 (pow re 2))))
#s(approx (+ (* -1/720 (* re re)) 1/24) #s(hole binary64 (* (pow re 2) (- (* 1/24 (/ 1 (pow re 2))) 1/720))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 2))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 1))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* -1/2 im))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* im (- (* 1/8 im) 1/2)))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/8 (* -1/48 im))) 1/2)))))
#s(approx (* -1 (/ im 2)) #s(hole binary64 (* -1/2 im)))
#s(approx (/ im 2) #s(hole binary64 (* 1/2 im)))
#s(approx im #s(hole binary64 im))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 1))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 (+ 1 (* -1/2 im))))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 (+ 1 (* im (- (* 1/8 im) 1/2)))))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/8 (* -1/48 im))) 1/2)))))
#s(approx (exp (neg im)) #s(hole binary64 1))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))))
#s(approx (neg im) #s(hole binary64 (* -1 im)))
#s(approx (exp im) #s(hole binary64 1))
#s(approx (exp im) #s(hole binary64 (+ 1 im)))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* 1/2 im))))))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 2))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))))
#s(approx (+ (* im im) 2) #s(hole binary64 2))
#s(approx (+ (* im im) 2) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (exp (* -1/2 im))))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 (sqrt (exp (neg im)))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (neg im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ (exp im) (pow (exp (* -1/2 im)) 2))))
#s(approx (+ (* im im) 2) #s(hole binary64 (pow im 2)))
#s(approx (+ (* im im) 2) #s(hole binary64 (* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (* (sqrt (exp (* -1 im))) (exp (* -1/2 im))))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 (+ (exp im) (* (sqrt (exp (* -1 im))) (exp (* -1/2 im))))))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 (sqrt (exp (* -1 im)))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (* -1 im))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))))
Calls

6 calls:

TimeVariablePointExpression
23.0ms
re
@inf
((* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (* 1/2 (cos re)) 1/2 (cos re) re (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (exp (* -1 (/ im 2))) (* -1 (/ im 2)) -1 (/ im 2) im 2 (sqrt (exp (neg im))) (exp (neg im)) (neg im) (exp im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (* re re) -1/2) 1) (* re re) -1/2 1 (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) (- (* 1/24 (* re re)) 1/2) (* 1/24 (* re re)) 1/24 (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* (+ (* -1/720 (* re re)) 1/24) (* re re)) (+ (* -1/720 (* re re)) 1/24) -1/720 (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (+ (* im im) 2))
10.0ms
re
@-inf
((* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (* 1/2 (cos re)) 1/2 (cos re) re (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (exp (* -1 (/ im 2))) (* -1 (/ im 2)) -1 (/ im 2) im 2 (sqrt (exp (neg im))) (exp (neg im)) (neg im) (exp im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (* re re) -1/2) 1) (* re re) -1/2 1 (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) (- (* 1/24 (* re re)) 1/2) (* 1/24 (* re re)) 1/24 (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* (+ (* -1/720 (* re re)) 1/24) (* re re)) (+ (* -1/720 (* re re)) 1/24) -1/720 (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (+ (* im im) 2))
3.0ms
im
@-inf
((* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (* 1/2 (cos re)) 1/2 (cos re) re (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (exp (* -1 (/ im 2))) (* -1 (/ im 2)) -1 (/ im 2) im 2 (sqrt (exp (neg im))) (exp (neg im)) (neg im) (exp im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (* re re) -1/2) 1) (* re re) -1/2 1 (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) (- (* 1/24 (* re re)) 1/2) (* 1/24 (* re re)) 1/24 (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* (+ (* -1/720 (* re re)) 1/24) (* re re)) (+ (* -1/720 (* re re)) 1/24) -1/720 (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (+ (* im im) 2))
3.0ms
im
@inf
((* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (* 1/2 (cos re)) 1/2 (cos re) re (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (exp (* -1 (/ im 2))) (* -1 (/ im 2)) -1 (/ im 2) im 2 (sqrt (exp (neg im))) (exp (neg im)) (neg im) (exp im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (* re re) -1/2) 1) (* re re) -1/2 1 (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) (- (* 1/24 (* re re)) 1/2) (* 1/24 (* re re)) 1/24 (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* (+ (* -1/720 (* re re)) 1/24) (* re re)) (+ (* -1/720 (* re re)) 1/24) -1/720 (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (+ (* im im) 2))
3.0ms
re
@0
((* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (* 1/2 (cos re)) 1/2 (cos re) re (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (exp (* -1 (/ im 2))) (* -1 (/ im 2)) -1 (/ im 2) im 2 (sqrt (exp (neg im))) (exp (neg im)) (neg im) (exp im) (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (* re re) -1/2) 1) (* re re) -1/2 1 (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) (- (* 1/24 (* re re)) 1/2) (* 1/24 (* re re)) 1/24 (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos re) (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* (+ (* -1/720 (* re re)) 1/24) (* re re)) (+ (* -1/720 (* re re)) 1/24) -1/720 (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (+ (* im im) 2))

rewrite250.0ms (6.8%)

Memory
-34.9MiB live, 319.1MiB allocated; 124ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03922999
04372719
121012529
092152447
Stop Event
iter-limit
node-limit
iter-limit
Counts
157 → 407
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (sqrt.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
(fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (sqrt.f64 (exp.f64 (neg.f64 im))) (exp.f64 im))
(exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64))))
(*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))
#s(literal -1 binary64)
(/.f64 im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(sqrt.f64 (exp.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(neg.f64 im)
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 re re)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
#s(literal 1/24 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.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)))
(fma.f64 (-.f64 (*.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 (*.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 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re))
(fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64))
#s(literal -1/720 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(fma.f64 im im #s(literal 2 binary64))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im)))))) (* 1/2 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))) (* 1/48 (* (pow re 2) (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im)))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im)))))) (* 1/48 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))))))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 1/2))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))))
#s(approx (cos re) #s(hole binary64 1))
#s(approx (cos re) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (cos re) #s(hole binary64 (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))))
#s(approx re #s(hole binary64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (exp (neg im))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (exp (neg im))))) (* 1/2 (+ (exp im) (exp (neg im)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole 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)))))))))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (- (* 1/24 (* re re)) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* 1/24 (* re re)) 1/2) #s(hole binary64 (- (* 1/24 (pow re 2)) 1/2)))
#s(approx (* 1/24 (* re re)) #s(hole binary64 (* 1/24 (pow re 2))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (+ 1 (* -1/2 (pow re 2)))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 (- (* 1/24 (pow re 2)) 1/2)))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) #s(hole binary64 (* 1/24 (pow re 2))))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) #s(hole binary64 (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2))))))
#s(approx (+ (* -1/720 (* re re)) 1/24) #s(hole binary64 1/24))
#s(approx (+ (* -1/720 (* re re)) 1/24) #s(hole binary64 (+ 1/24 (* -1/720 (pow re 2)))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2)))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* 1/48 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (* 1/2 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/4 (+ (exp im) (pow (exp (* -1/2 im)) 2))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (+ (exp im) (pow (exp (* -1/2 im)) 2)))) (* 1/48 (+ (exp im) (pow (exp (* -1/2 im)) 2))))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (neg im)))))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (* -1/2 (pow re 2))))
#s(approx (+ (* (* re re) -1/2) 1) #s(hole binary64 (* (pow re 2) (- (/ 1 (pow re 2)) 1/2))))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* 1/24 (pow re 4))))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* (pow re 4) (- 1/24 (* 1/2 (/ 1 (pow re 2)))))))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* (pow re 4) (- (+ 1/24 (/ 1 (pow re 4))) (* 1/2 (/ 1 (pow re 2)))))))
#s(approx (- (* 1/24 (* re re)) 1/2) #s(hole binary64 (* 1/24 (pow re 2))))
#s(approx (- (* 1/24 (* re re)) 1/2) #s(hole binary64 (* (pow re 2) (- 1/24 (* 1/2 (/ 1 (pow re 2)))))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* -1/720 (pow re 6))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* (pow re 6) (- (* 1/24 (/ 1 (pow re 2))) 1/720))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* (pow re 6) (- (* 1/24 (/ 1 (pow re 2))) (+ 1/720 (/ 1/2 (pow re 4)))))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(hole binary64 (* (pow re 6) (- (+ (* 1/24 (/ 1 (pow re 2))) (/ 1 (pow re 6))) (+ 1/720 (/ 1/2 (pow re 4)))))))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 (* -1/720 (pow re 4))))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 (* (pow re 4) (- (* 1/24 (/ 1 (pow re 2))) 1/720))))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(hole binary64 (* (pow re 4) (- (* 1/24 (/ 1 (pow re 2))) (+ 1/720 (/ 1/2 (pow re 4)))))))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) #s(hole binary64 (* -1/720 (pow re 4))))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) #s(hole binary64 (* (pow re 4) (- (* 1/24 (/ 1 (pow re 2))) 1/720))))
#s(approx (+ (* -1/720 (* re re)) 1/24) #s(hole binary64 (* -1/720 (pow re 2))))
#s(approx (+ (* -1/720 (* re re)) 1/24) #s(hole binary64 (* (pow re 2) (- (* 1/24 (/ 1 (pow re 2))) 1/720))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (pow (exp (* -1/2 im)) 2))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 2))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 1))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* -1/2 im))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* im (- (* 1/8 im) 1/2)))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/8 (* -1/48 im))) 1/2)))))
#s(approx (* -1 (/ im 2)) #s(hole binary64 (* -1/2 im)))
#s(approx (/ im 2) #s(hole binary64 (* 1/2 im)))
#s(approx im #s(hole binary64 im))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 1))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 (+ 1 (* -1/2 im))))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 (+ 1 (* im (- (* 1/8 im) 1/2)))))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/8 (* -1/48 im))) 1/2)))))
#s(approx (exp (neg im)) #s(hole binary64 1))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (neg im)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))))
#s(approx (neg im) #s(hole binary64 (* -1 im)))
#s(approx (exp im) #s(hole binary64 1))
#s(approx (exp im) #s(hole binary64 (+ 1 im)))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* 1/2 im))))))
#s(approx (exp im) #s(hole binary64 (+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* 1/2 (* (pow im 2) (cos re))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/24 (* (pow im 2) (cos re))) (* 1/2 (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im))) #s(hole binary64 (+ (cos re) (* (pow im 2) (+ (* 1/2 (cos re)) (* (pow im 2) (+ (* 1/720 (* (pow im 2) (cos re))) (* 1/24 (cos re)))))))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 2))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* 1/12 (pow im 2)))))))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ 2 (* (pow im 2) (+ 1 (* (pow im 2) (+ 1/12 (* 1/360 (pow im 2)))))))))
#s(approx (+ (* im im) 2) #s(hole binary64 2))
#s(approx (+ (* im im) 2) #s(hole binary64 (+ 2 (pow im 2))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 (+ (exp im) (* (sqrt (exp (neg im))) (exp (* -1/2 im))))))
#s(approx (exp (* -1 (/ im 2))) #s(hole binary64 (exp (* -1/2 im))))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 (sqrt (exp (neg im)))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (neg im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(hole binary64 (+ (exp im) (pow (exp (* -1/2 im)) 2))))
#s(approx (+ (* im im) 2) #s(hole binary64 (pow im 2)))
#s(approx (+ (* im im) 2) #s(hole binary64 (* (pow im 2) (+ 1 (* 2 (/ 1 (pow im 2)))))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (* (sqrt (exp (* -1 im))) (exp (* -1/2 im))))))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(hole binary64 (+ (exp im) (* (sqrt (exp (* -1 im))) (exp (* -1/2 im))))))
#s(approx (sqrt (exp (neg im))) #s(hole binary64 (sqrt (exp (* -1 im)))))
#s(approx (exp (neg im)) #s(hole binary64 (exp (* -1 im))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (+ (exp im) (exp (* -1 im)))))))
Outputs
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (cos.f64 re)))
(/.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64)) (pow.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))) (*.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))) (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im))))))
(fma.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)))
(+.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (exp.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im)))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 re (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
re
(*.f64 #s(literal 2 binary64) (cosh.f64 im))
(/.f64 (neg.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (exp.f64 (+.f64 im im)))) (neg.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64))))) (neg.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 (neg.f64 im) im))))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(/.f64 (neg.f64 (+.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))))) (neg.f64 (+.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (exp.f64 (+.f64 im (neg.f64 im)))))))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (exp.f64 (+.f64 im im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(/.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 (neg.f64 im) im)))))
(/.f64 (+.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64)))) (+.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (exp.f64 (+.f64 im (neg.f64 im))))))
(fma.f64 (neg.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))) (neg.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))) (exp.f64 im))
(fma.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))) (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))) (exp.f64 im))
(fma.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) (sqrt.f64 (exp.f64 (neg.f64 im))) (exp.f64 im))
(-.f64 (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (/.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(-.f64 (/.f64 (exp.f64 (+.f64 im im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(+.f64 (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 (neg.f64 im) im))))) (/.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 (neg.f64 im) im))))))
(+.f64 (/.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (+.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (exp.f64 (+.f64 im (neg.f64 im)))))) (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 (exp.f64 (+.f64 im im)) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (exp.f64 (+.f64 im (neg.f64 im)))))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))) (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))))
(*.f64 (fabs.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))) (fabs.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))))
(*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))))
(pow.f64 (exp.f64 (/.f64 im #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))
(pow.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (+.f64 (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (*.f64 im #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64)))
(pow.f64 (exp.f64 (neg.f64 im)) #s(literal 1/2 binary64))
(/.f64 (+.f64 (pow.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (cosh.f64 (/.f64 im #s(literal 2 binary64))) (-.f64 (*.f64 (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64))) (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (*.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (exp.f64 im)))
(/.f64 #s(literal 1 binary64) (exp.f64 (/.f64 im #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 (neg.f64 im)) #s(literal -1/2 binary64)))
(sqrt.f64 (exp.f64 (neg.f64 im)))
(-.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (sinh.f64 (/.f64 im #s(literal 2 binary64))))
(fabs.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))))
(fabs.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))
(exp.f64 (*.f64 (neg.f64 im) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (neg.f64 im))) #s(literal 1/2 binary64)))
(exp.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64))))
(*.f64 (/.f64 im #s(literal 2 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal -1/2 binary64) (/.f64 im #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))
(/.f64 (neg.f64 (neg.f64 im)) #s(literal -2 binary64))
(/.f64 (neg.f64 im) #s(literal 2 binary64))
(neg.f64 (/.f64 im #s(literal 2 binary64)))
#s(literal -1 binary64)
(/.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(/.f64 (neg.f64 im) #s(literal -2 binary64))
(/.f64 im #s(literal 2 binary64))
im
#s(literal 2 binary64)
(*.f64 (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))) (neg.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))))
(*.f64 (fabs.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))) (fabs.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))))
(*.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))))
(pow.f64 (exp.f64 (/.f64 im #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))
(pow.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (+.f64 (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)) (/.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64))))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (*.f64 im #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64)))
(pow.f64 (exp.f64 (neg.f64 im)) #s(literal 1/2 binary64))
(/.f64 (+.f64 (pow.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (cosh.f64 (/.f64 im #s(literal 2 binary64))) (-.f64 (*.f64 (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64))) (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (*.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (exp.f64 im)))
(/.f64 #s(literal 1 binary64) (exp.f64 (/.f64 im #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 (neg.f64 im)) #s(literal -1/2 binary64)))
(sqrt.f64 (exp.f64 (neg.f64 im)))
(-.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (sinh.f64 (/.f64 im #s(literal 2 binary64))))
(fabs.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))))
(fabs.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))
(exp.f64 (*.f64 (neg.f64 im) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (neg.f64 im))) #s(literal 1/2 binary64)))
(exp.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (/.f64 im #s(literal 2 binary64))) (sinh.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64))))
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))) (neg.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im))))))
(*.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))) (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))))
(*.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) (sqrt.f64 (exp.f64 (neg.f64 im))))
(pow.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal -2 binary64)) (/.f64 im #s(literal 2 binary64)))
(pow.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (*.f64 (/.f64 im #s(literal 2 binary64)) #s(literal 2 binary64)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (/.f64 im #s(literal 2 binary64))))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 (+.f64 im im) #s(literal 2 binary64)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) im)
(pow.f64 (exp.f64 im) #s(literal -1 binary64))
(pow.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (fma.f64 (sinh.f64 im) (sinh.f64 im) (*.f64 (cosh.f64 im) (sinh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(/.f64 #s(literal 1 binary64) (exp.f64 im))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(sqrt.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))
(-.f64 (cosh.f64 im) (sinh.f64 im))
(fabs.f64 (exp.f64 (neg.f64 im)))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(exp.f64 (+.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) (/.f64 (neg.f64 im) #s(literal 2 binary64))))
(exp.f64 (*.f64 (/.f64 (neg.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 im #s(literal 2 binary64)))))
(exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 im im) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal -2 binary64))) (/.f64 im #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (exp.f64 (neg.f64 im)))) #s(literal 2 binary64)))
(exp.f64 (neg.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(*.f64 im #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) im)
(neg.f64 im)
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 im) (sinh.f64 im)) (*.f64 (cosh.f64 im) (sinh.f64 im)))))
(exp.f64 im)
(+.f64 (cosh.f64 im) (sinh.f64 im))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re re)) (*.f64 #s(literal 1/2 binary64) (*.f64 re re)) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 re re))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/8 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (neg.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/8 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64)))))
(fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 re (*.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))) (/.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 re re)))
(+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/8 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/8 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))))
(+.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))
(*.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)))
(*.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 re)))
(*.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)))
(*.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)))
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 re re)
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 re) #s(literal 2 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 re #s(literal 2 binary64))
(fabs.f64 (*.f64 re re))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))))
#s(literal -1/2 binary64)
#s(literal 1 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64)))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 (*.f64 re re) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re))) (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))
(+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re))))) (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re))))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))))) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) re) re))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64))) #s(literal 1/4 binary64))) (neg.f64 (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64))) #s(literal 1/4 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64))) (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 re re) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal 1/13824 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/24 binary64) re) re)
(*.f64 (*.f64 re re) #s(literal 1/24 binary64))
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
#s(literal 1/24 binary64)
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64)))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 (*.f64 re re) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re))) (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64))))
(+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re))))) (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re))))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))))) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (fma.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 2 binary64)) (fma.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal 1/2 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64))
(*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re)
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 re re))
(*.f64 (*.f64 re re) (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal 1/13824 binary64) (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 re re)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 re re)) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 re re))) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 re re))))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal 1/13824 binary64) (pow.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))) (*.f64 (*.f64 re re) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))))))
(fma.f64 (*.f64 #s(literal 1/24 binary64) re) re (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 re re)))
(fma.f64 (*.f64 #s(literal 1/24 binary64) re) re (*.f64 (*.f64 re re) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))))
(fma.f64 (*.f64 re re) #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 re re)))
(fma.f64 (*.f64 re re) #s(literal 1/24 binary64) (*.f64 (*.f64 re re) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))))
(fma.f64 #s(literal 1/24 binary64) (*.f64 re re) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 re re)))
(fma.f64 #s(literal 1/24 binary64) (*.f64 re re) (*.f64 (*.f64 re re) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))))
(+.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 re re)))
(+.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 (*.f64 re re) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))))
(/.f64 (-.f64 #s(literal 1/13824 binary64) (pow.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 re re)) #s(literal 3 binary64))) (+.f64 #s(literal 1/576 binary64) (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 re re)) (*.f64 #s(literal 1/720 binary64) (*.f64 re re)) (*.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 re re))))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))) #s(literal 1/576 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))))) (neg.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/373248000 binary64) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal 1/13824 binary64))) (neg.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))))))
(/.f64 (neg.f64 (+.f64 #s(literal 1/13824 binary64) (*.f64 #s(literal -1/373248000 binary64) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re))))) (neg.f64 (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))) #s(literal 1/576 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) #s(literal 1/24 binary64)))
(/.f64 (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))) (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))))
(/.f64 (fma.f64 #s(literal -1/373248000 binary64) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal 1/13824 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) #s(literal 1/24 binary64)))))
(/.f64 (+.f64 #s(literal 1/13824 binary64) (*.f64 #s(literal -1/373248000 binary64) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)))) (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))))))
(fma.f64 (*.f64 #s(literal -1/720 binary64) re) re #s(literal 1/24 binary64))
(fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64))
(fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))) (/.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))))
(-.f64 (/.f64 #s(literal 1/576 binary64) (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))) (/.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))) (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))))
(-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 re re)))
(+.f64 (/.f64 (*.f64 #s(literal -1/373248000 binary64) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re))) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))))) (/.f64 #s(literal 1/13824 binary64) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))))))
(+.f64 (/.f64 #s(literal 1/13824 binary64) (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))))) (/.f64 (*.f64 #s(literal -1/373248000 binary64) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re))) (+.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) (*.f64 (*.f64 re re) #s(literal -1/720 binary64))) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))))))
(+.f64 (*.f64 (*.f64 re re) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))
(+.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))
#s(literal -1/720 binary64)
(*.f64 #s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (fma.f64 im im #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) #s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (fma.f64 im im #s(literal 2 binary64)))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 4 binary64))) (neg.f64 (-.f64 (*.f64 im im) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 4 binary64) (*.f64 (*.f64 im im) (*.f64 im im)))) (neg.f64 (-.f64 #s(literal 2 binary64) (*.f64 im im))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 im im) im) #s(literal 8 binary64))) (neg.f64 (fma.f64 (*.f64 im im) (*.f64 im im) (-.f64 #s(literal 4 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (*.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 im im) im)))) (neg.f64 (+.f64 #s(literal 4 binary64) (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 4 binary64)) (-.f64 (*.f64 im im) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 4 binary64) (*.f64 (*.f64 im im) (*.f64 im im))) (-.f64 #s(literal 2 binary64) (*.f64 im im)))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 im im) im) #s(literal 8 binary64)) (fma.f64 (*.f64 im im) (*.f64 im im) (-.f64 #s(literal 4 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64)))))
(/.f64 (+.f64 #s(literal 8 binary64) (*.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 im im) im))) (+.f64 #s(literal 4 binary64) (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 #s(literal 2 binary64) (*.f64 im im)))))
(fma.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)) #s(literal 2 binary64))
(fma.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 im)) #s(literal 2 binary64))
(fma.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)) #s(literal 2 binary64))
(fma.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(fma.f64 (fabs.f64 im) (fabs.f64 im) #s(literal 2 binary64))
(fma.f64 (neg.f64 im) (neg.f64 im) #s(literal 2 binary64))
(fma.f64 im im #s(literal 2 binary64))
(-.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (-.f64 (*.f64 im im) #s(literal 2 binary64))) (/.f64 #s(literal 4 binary64) (-.f64 (*.f64 im im) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 4 binary64) (-.f64 #s(literal 2 binary64) (*.f64 im im))) (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (-.f64 #s(literal 2 binary64) (*.f64 im im))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 im im) im)) (fma.f64 (*.f64 im im) (*.f64 im im) (-.f64 #s(literal 4 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))))) (/.f64 #s(literal 8 binary64) (fma.f64 (*.f64 im im) (*.f64 im im) (-.f64 #s(literal 4 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))))))
(+.f64 (/.f64 #s(literal 8 binary64) (+.f64 #s(literal 4 binary64) (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))) (/.f64 (*.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 4 binary64) (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 #s(literal 2 binary64) (*.f64 im im))))))
(+.f64 (*.f64 im im) #s(literal 2 binary64))
(+.f64 #s(literal 2 binary64) (*.f64 im im))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (*.f64 (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)) (*.f64 (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)) (*.f64 #s(literal -1/4 binary64) (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)))) (*.f64 re re))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (fma.f64 (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)) #s(literal -1/4 binary64) (*.f64 (fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)) (*.f64 #s(literal 1/48 binary64) (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)))) (*.f64 re re))) (*.f64 re re) (*.f64 (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (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 (cos re) #s(literal 1 binary64))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64)))
#s(approx re re)
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -1/4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 1/48 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal -1/1440 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/48 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (+ (* (* re re) -1/2) 1) #s(literal 1 binary64))
#s(approx (+ (* (* re re) -1/2) 1) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (* re re) (*.f64 re re))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) #s(literal 1 binary64))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (- (* 1/24 (* re re)) 1/2) #s(literal -1/2 binary64))
#s(approx (- (* 1/24 (* re re)) 1/2) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))
#s(approx (* 1/24 (* re re)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64)))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) #s(literal 1 binary64))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64)))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) #s(literal -1/2 binary64))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) (*.f64 (*.f64 re re) #s(literal 1/24 binary64)))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re))
#s(approx (+ (* -1/720 (* re re)) 1/24) #s(literal 1/24 binary64))
#s(approx (+ (* -1/720 (* re re)) 1/24) (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) (*.f64 re re)) #s(literal -1/4 binary64) (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) (*.f64 re re)) #s(literal 1/48 binary64) (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal -1/4 binary64) (*.f64 (fma.f64 (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) (*.f64 re re)) #s(literal -1/1440 binary64) (*.f64 (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)) #s(literal 1/48 binary64))) (*.f64 re re))) (*.f64 re re))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im))))
#s(approx (* 1/2 (cos re)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
#s(approx (cos re) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
#s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))
#s(approx (+ (* (* re re) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re)))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/24 binary64)))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) (*.f64 (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 re re))) (*.f64 (*.f64 re re) (*.f64 re re))))
#s(approx (+ (* (- (* 1/24 (* re re)) 1/2) (* re re)) 1) (*.f64 (+.f64 #s(literal 1/24 binary64) (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) (*.f64 re re))) (/.f64 #s(literal 1/2 binary64) (*.f64 re re)))) (*.f64 (*.f64 re re) (*.f64 re re))))
#s(approx (- (* 1/24 (* re re)) 1/2) (*.f64 (*.f64 re re) #s(literal 1/24 binary64)))
#s(approx (- (* 1/24 (* re re)) 1/2) (*.f64 (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 re re))) (*.f64 re re)))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/720 binary64)))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/720 binary64))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) (-.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) (*.f64 re re))))))
#s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) (-.f64 (-.f64 (+.f64 (pow.f64 re #s(literal -6 binary64)) (/.f64 #s(literal 1/24 binary64) (*.f64 re re))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) (*.f64 re re))))))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (*.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/720 binary64)))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (*.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/720 binary64)) (*.f64 (*.f64 re re) (*.f64 re re))))
#s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) (*.f64 re re)))) (*.f64 (*.f64 re re) (*.f64 re re))))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) (*.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/720 binary64)))
#s(approx (* (+ (* -1/720 (* re re)) 1/24) (* re re)) (*.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/720 binary64)) (*.f64 (*.f64 re re) (*.f64 re re))))
#s(approx (+ (* -1/720 (* re re)) 1/24) (*.f64 (*.f64 re re) #s(literal -1/720 binary64)))
#s(approx (+ (* -1/720 (* re re)) 1/24) (*.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/720 binary64)) (*.f64 re re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) (cos.f64 re) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal 1/24 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(literal 2 binary64))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (fma.f64 (fma.f64 #s(literal 1/12 binary64) (*.f64 im im) #s(literal 1 binary64)) (*.f64 im im) #s(literal 2 binary64)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (*.f64 im im) #s(literal 1 binary64)) (*.f64 im im) #s(literal 2 binary64)))
#s(approx (sqrt (exp (neg im))) #s(literal 1 binary64))
#s(approx (sqrt (exp (neg im))) (fma.f64 #s(literal -1/2 binary64) im #s(literal 1 binary64)))
#s(approx (sqrt (exp (neg im))) (fma.f64 (-.f64 (*.f64 #s(literal 1/8 binary64) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64)))
#s(approx (sqrt (exp (neg im))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) im #s(literal 1/8 binary64)) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64)))
#s(approx (* -1 (/ im 2)) (*.f64 #s(literal -1/2 binary64) im))
#s(approx (/ im 2) (*.f64 im #s(literal 1/2 binary64)))
#s(approx im im)
#s(approx (sqrt (exp (neg im))) #s(literal 1 binary64))
#s(approx (sqrt (exp (neg im))) (fma.f64 #s(literal -1/2 binary64) im #s(literal 1 binary64)))
#s(approx (sqrt (exp (neg im))) (fma.f64 (-.f64 (*.f64 #s(literal 1/8 binary64) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64)))
#s(approx (sqrt (exp (neg im))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) im #s(literal 1/8 binary64)) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64)))
#s(approx (exp (neg im)) #s(literal 1 binary64))
#s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (neg.f64 im)))
#s(approx (exp (neg im)) (fma.f64 (-.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) im #s(literal 1 binary64)))
#s(approx (exp (neg im)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) im #s(literal 1/2 binary64)) im) #s(literal 1 binary64)) im #s(literal 1 binary64)))
#s(approx (neg im) (neg.f64 im))
#s(approx (exp im) #s(literal 1 binary64))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
#s(approx (exp im) (fma.f64 (fma.f64 im #s(literal 1/2 binary64) #s(literal 1 binary64)) im #s(literal 1 binary64)))
#s(approx (exp 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)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) (cos.f64 re) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal 1/24 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) (cos.f64 re) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal 1/24 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 im im) (cos.f64 re)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) #s(literal 2 binary64))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (fma.f64 im im #s(literal 2 binary64)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (fma.f64 (fma.f64 #s(literal 1/12 binary64) (*.f64 im im) #s(literal 1 binary64)) (*.f64 im im) #s(literal 2 binary64)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/360 binary64) (*.f64 im im) #s(literal 1/12 binary64)) (*.f64 im im) #s(literal 1 binary64)) (*.f64 im im) #s(literal 2 binary64)))
#s(approx (+ (* im im) 2) #s(literal 2 binary64))
#s(approx (+ (* im im) 2) (fma.f64 im im #s(literal 2 binary64)))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)))
#s(approx (sqrt (exp (neg im))) (exp.f64 (*.f64 #s(literal -1/2 binary64) im)))
#s(approx (sqrt (exp (neg im))) (sqrt.f64 (exp.f64 (neg.f64 im))))
#s(approx (exp (neg im)) (exp.f64 (neg.f64 im)))
#s(approx (exp im) (exp.f64 im))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (+.f64 (exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 2 binary64))) (exp.f64 im)))
#s(approx (+ (* im im) 2) (*.f64 im im))
#s(approx (+ (* im im) 2) (*.f64 (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im)) #s(literal 1 binary64)) (*.f64 im im)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im))))
#s(approx (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im)) (+.f64 (exp.f64 (fma.f64 #s(literal -1/2 binary64) im (/.f64 (neg.f64 im) #s(literal 2 binary64)))) (exp.f64 im)))
#s(approx (sqrt (exp (neg im))) (sqrt.f64 (exp.f64 (neg.f64 im))))
#s(approx (exp (neg im)) (exp.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))

eval68.0ms (1.8%)

Memory
-8.8MiB live, 131.9MiB allocated; 14ms collecting garbage
Compiler

Compiled 5 403 to 2 081 computations (61.5% saved)

prune31.0ms (0.8%)

Memory
23.8MiB live, 69.4MiB allocated; 3ms collecting garbage
Pruning

20 alts after pruning (13 fresh and 7 done)

PrunedKeptTotal
New43310443
Fresh336
Picked235
Done044
Total43820458
Accuracy
100.0%
Counts
458 → 20
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(approx (exp (neg im)) (fma.f64 (-.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) im #s(literal 1 binary64)))))
71.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 #s(approx (sqrt (exp (neg im))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) im #s(literal 1/8 binary64)) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64))) (sqrt.f64 (exp.f64 (neg.f64 im))) (exp.f64 im)))
77.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
53.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(approx (+ (* im im) 2) (*.f64 (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im)) #s(literal 1 binary64)) (*.f64 im im)))))
25.9%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
100.0%
(*.f64 (cosh.f64 im) (cos.f64 re))
66.1%
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
52.8%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
50.2%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
67.2%
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
40.8%
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64))))
34.7%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64)))))
54.7%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
33.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
39.6%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
37.8%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
37.8%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))))
40.5%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (*.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/720 binary64))) (*.f64 re re) #s(literal 1 binary64))))
11.2%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/720 binary64)))))
8.3%
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
Compiler

Compiled 776 to 578 computations (25.5% saved)

regimes89.0ms (2.4%)

Memory
-22.1MiB live, 165.0MiB allocated; 42ms collecting garbage
Counts
39 → 1
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(literal 1 binary64) (cosh.f64 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 (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/720 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (*.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/720 binary64))) (*.f64 re re) #s(literal 1 binary64))))
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (cosh.f64 im) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (cos.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(approx (+ (* im im) 2) (*.f64 (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im)) #s(literal 1 binary64)) (*.f64 im im)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(approx (exp (* -1 (/ im 2))) (fma.f64 #s(literal -1/2 binary64) im #s(literal 1 binary64))) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 #s(approx (sqrt (exp (neg im))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) im #s(literal 1/8 binary64)) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64))) (sqrt.f64 (exp.f64 (neg.f64 im))) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (sqrt.f64 (exp.f64 (neg.f64 im))) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) #s(approx (exp (* -1 (/ im 2))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) im #s(literal 1/8 binary64)) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64))) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 (*.f64 #s(literal -1 binary64) (/.f64 im #s(literal 2 binary64)))) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) #s(approx (pow (exp -1) (/ im 2)) (fma.f64 #s(literal -1/2 binary64) im #s(literal 1 binary64))) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (/.f64 (+.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64)))) (+.f64 (exp.f64 (+.f64 im im)) (expm1.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) #s(approx (pow (exp -1) (/ im 2)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) im #s(literal 1/8 binary64)) im) #s(literal 1/2 binary64)) im #s(literal 1 binary64))) (exp.f64 im)))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) #s(approx (exp (neg im)) (fma.f64 (-.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) im #s(literal 1 binary64)))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (fma.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal -1 binary64)) (/.f64 im #s(literal 2 binary64))) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (/.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (+.f64 (exp.f64 (+.f64 im im)) (expm1.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))) (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 (exp.f64 (+.f64 im im)) (expm1.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))))
Outputs
(*.f64 (cosh.f64 im) (cos.f64 re))
Calls

6 calls:

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

Compiled 23 to 28 computations (-21.7% saved)

regimes36.0ms (1%)

Memory
33.3MiB live, 80.4MiB allocated; 1ms collecting garbage
Counts
23 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(literal 1 binary64) (cosh.f64 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 (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/720 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (*.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/720 binary64))) (*.f64 re re) #s(literal 1 binary64))))
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
Outputs
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (exp (neg im)) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
Calls

6 calls:

7.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
6.0ms
im
6.0ms
re
6.0ms
(cos.f64 re)
5.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
89.4%2(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
89.6%2(cos.f64 re)
89.6%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
99.6%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
89.6%2re
94.5%3im
Compiler

Compiled 23 to 28 computations (-21.7% saved)

regimes30.0ms (0.8%)

Memory
-34.6MiB live, 15.0MiB allocated; 33ms collecting garbage
Counts
21 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(literal 1 binary64) (cosh.f64 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 (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/720 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (*.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/720 binary64))) (*.f64 re re) #s(literal 1 binary64))))
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) #s(approx (+ (* im im) 2) (*.f64 im im))))
Outputs
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (cos.f64 re))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
Calls

1 calls:

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

Compiled 10 to 10 computations (0% saved)

regimes32.0ms (0.9%)

Memory
15.3MiB live, 64.2MiB allocated; 5ms collecting garbage
Counts
18 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(literal 1 binary64) (cosh.f64 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 (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/720 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (*.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/720 binary64))) (*.f64 re re) #s(literal 1 binary64))))
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (* (exp (* -1 (/ im 2))) (sqrt (exp (neg im)))) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) re) re #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
Outputs
(*.f64 (cosh.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
Calls

6 calls:

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

Compiled 23 to 28 computations (-21.7% saved)

regimes11.0ms (0.3%)

Memory
24.1MiB live, 24.1MiB allocated; 0ms collecting garbage
Counts
12 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(literal 1 binary64) (cosh.f64 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 (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (* re re)) 1) (*.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal -1/720 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 #s(approx (- (* (+ (* -1/720 (* re re)) 1/24) (* re re)) 1/2) (*.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal -1/720 binary64))) (*.f64 re re) #s(literal 1 binary64))))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
Calls

3 calls:

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

Compiled 16 to 18 computations (-12.5% saved)

regimes9.0ms (0.2%)

Memory
-26.5MiB live, 20.6MiB allocated; 1ms collecting garbage
Counts
8 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (exp im)) (fma.f64 im im #s(literal 2 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) (cosh.f64 im))
Calls

3 calls:

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

Compiled 16 to 18 computations (-12.5% saved)

regimes15.0ms (0.4%)

Memory
-7.1MiB live, 37.7MiB allocated; 3ms collecting garbage
Counts
6 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
#s(approx (+ (* (* (cos re) 1/2) (exp im)) (* (* (cos re) 1/2) (exp (neg im)))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (+ (* (pow (exp -1) (/ im 2)) (pow (exp -1) (/ im 2))) (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) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
Calls

6 calls:

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

Compiled 23 to 28 computations (-21.7% saved)

regimes9.0ms (0.2%)

Memory
28.9MiB live, 28.9MiB allocated; 0ms collecting garbage
Counts
3 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (cos re) #s(approx (+ (* (* re re) -1/2) 1) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
Calls

6 calls:

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

Compiled 23 to 28 computations (-21.7% saved)

regimes15.0ms (0.4%)

Memory
-23.1MiB live, 23.2MiB allocated; 11ms collecting garbage
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 (* 1 (cosh im)) #s(literal 1 binary64)))
Outputs
#s(approx (* (* 1/2 (cos re)) (+ (exp (neg im)) (exp im))) #s(approx (* 1 (cosh im)) #s(literal 1 binary64)))
Calls

6 calls:

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

Compiled 23 to 28 computations (-21.7% saved)

bsearch0.0ms (0%)

Memory
2.2MiB live, 2.2MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999999956422
1.0
0.0ms
-inf
-292423.44485485414
Compiler

Compiled 13 to 15 computations (-15.4% saved)

bsearch0.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999999956422
1.0
0.0ms
-inf
-292423.44485485414
Compiler

Compiled 13 to 15 computations (-15.4% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.13199821969439338
0.008634638767123155
Compiler

Compiled 13 to 15 computations (-15.4% saved)

bsearch0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.06599910984719669
0.0043173193835615775
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.06599910984719669
0.0043173193835615775
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.13199821969439338
0.008634638767123155
Compiler

Compiled 13 to 15 computations (-15.4% saved)

bsearch0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.13199821969439338
0.008634638767123155
Compiler

Compiled 13 to 15 computations (-15.4% saved)

derivations740.0ms (20.2%)

Memory
-24.2MiB live, 393.7MiB allocated; 739ms collecting garbage
Stop Event
fuel
Compiler

Compiled 126 to 82 computations (34.9% saved)

preprocess74.0ms (2%)

Memory
8.6MiB live, 148.0MiB allocated; 10ms collecting garbage
Remove

(abs im)

(abs re)

Compiler

Compiled 1 416 to 1 172 computations (17.2% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...