math.sin on complex, imaginary part

Time bar (total: 5.6s)

start0.0ms (0%)

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

analyze0.0ms (0%)

Memory
0.6MiB live, 0.6MiB 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 14 to 13 computations (7.1% saved)

sample2.5s (44.6%)

Memory
109.2MiB live, 2 907.6MiB allocated; 827ms collecting garbage
Samples
986.0ms1 700×2valid
562.0ms4 238×0valid
505.0ms2 318×1valid
Precisions
Click to see histograms. Total time spent on operations: 1.8s
ival-exp: 945.0ms (52.5% of total)
ival-mult!: 416.0ms (23.1% of total)
ival-cos: 263.0ms (14.6% of total)
adjust: 120.0ms (6.7% of total)
ival-sub!: 56.0ms (3.1% of total)
Bogosity

preprocess103.0ms (1.8%)

Memory
-3.0MiB live, 43.3MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03070
113355
258634
3401834
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
52.7%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Symmetry

(abs re)

(negabs im)

Compiler

Compiled 22 to 22 computations (0% saved)

series9.0ms (0.2%)

Memory
14.7MiB live, 14.7MiB allocated; 0ms collecting garbage
Counts
11 → 38
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) 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 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(-.f64 #s(literal 0 binary64) im)
#s(literal 0 binary64)
im
(exp.f64 im)
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (- (exp (neg im)) (exp im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp 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 (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (neg im)) (exp 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 (- 0 im)) (exp im))) #s(hole binary64 (* -1 (* im (cos re)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (* -2 im)))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (* im (- (* -1/3 (pow im 2)) 2))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))))
#s(approx (- 0 im) #s(hole binary64 (* -1 im)))
#s(approx im #s(hole binary64 im))
#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 (- 0 im)) (exp im)) #s(hole binary64 (- (exp (neg im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (neg im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (* -1 im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (* -1 im))))
Calls

6 calls:

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

rewrite196.0ms (3.5%)

Memory
-2.6MiB live, 226.2MiB allocated; 36ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0186725
0197690
11211626
08140589
121959589
Stop Event
iter-limit
node-limit
iter-limit
Counts
49 → 128
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) 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 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(-.f64 #s(literal 0 binary64) im)
#s(literal 0 binary64)
im
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (- (exp (neg im)) (exp im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp 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 (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (neg im)) (exp 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 (- 0 im)) (exp im))) #s(hole binary64 (* -1 (* im (cos re)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (* -2 im)))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (* im (- (* -1/3 (pow im 2)) 2))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))))
#s(approx (- 0 im) #s(hole binary64 (* -1 im)))
#s(approx im #s(hole binary64 im))
#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 (- 0 im)) (exp im)) #s(hole binary64 (- (exp (neg im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (neg im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (* -1 im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (* -1 im))))
Outputs
(*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)) (cos.f64 re))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(*.f64 (cos.f64 re) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)))
(neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(neg.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re))))
(neg.f64 (*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)) #s(literal -1/2 binary64)))
(neg.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(fma.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))))
(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)) (neg.f64 (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)) (neg.f64 (exp.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 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(neg.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 re)))
(neg.f64 (*.f64 (cos.f64 re) #s(literal -1/2 binary64)))
#s(literal 1/2 binary64)
(sin.f64 (+.f64 (neg.f64 re) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 re) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) re))
(fma.f64 (sin.f64 re) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 (fabs.f64 re)))
(cos.f64 (fabs.f64 (fabs.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 (fabs.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 re) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 re) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
re
(/.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (neg.f64 (exp.f64 im)) #s(literal 3 binary64))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (*.f64 (exp.f64 (neg.f64 im)) (neg.f64 (exp.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)) (neg.f64 (exp.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 (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)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im)))
(-.f64 (-.f64 (exp.f64 (neg.f64 im)) (cosh.f64 im)) (sinh.f64 im))
(-.f64 (cosh.f64 im) (-.f64 (sinh.f64 im) (neg.f64 (exp.f64 im))))
(-.f64 (cosh.f64 im) (+.f64 (sinh.f64 im) (exp.f64 im)))
(-.f64 (exp.f64 (neg.f64 im)) (neg.f64 (neg.f64 (exp.f64 im))))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+.f64 (-.f64 (cosh.f64 im) (cosh.f64 im)) (-.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 im)))
(+.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im)))
(+.f64 (cosh.f64 im) (+.f64 (sinh.f64 (neg.f64 im)) (neg.f64 (exp.f64 im))))
(+.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im)))
(*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(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)))) (exp.f64 im))
(/.f64 (-.f64 (*.f64 (cosh.f64 im) (cosh.f64 im)) (*.f64 (sinh.f64 im) (sinh.f64 im))) (exp.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 (-.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 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(/.f64 #s(literal 1 binary64) (/.f64 (exp.f64 im) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (exp.f64 im))
(neg.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)))
(neg.f64 (-.f64 (sinh.f64 im) (cosh.f64 im)))
(sqrt.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))
(-.f64 (cosh.f64 im) (neg.f64 (sinh.f64 (neg.f64 im))))
(-.f64 (cosh.f64 im) (sinh.f64 im))
(fabs.f64 (-.f64 (sinh.f64 im) (cosh.f64 im)))
(fabs.f64 (neg.f64 (exp.f64 (neg.f64 im))))
(fabs.f64 (exp.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(+.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(*.f64 #s(literal -1 binary64) im)
(*.f64 im #s(literal -1 binary64))
(/.f64 (*.f64 (neg.f64 im) im) im)
(/.f64 (*.f64 (neg.f64 im) (*.f64 im im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))
(/.f64 (*.f64 (neg.f64 im) (*.f64 im im)) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (neg.f64 im)))))
(neg.f64 im)
(fma.f64 #s(literal -1 binary64) im #s(literal 0 binary64))
(fma.f64 im #s(literal -1 binary64) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) im)
(+.f64 (neg.f64 im) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (neg.f64 im))
#s(literal 0 binary64)
im
(/.f64 (-.f64 (*.f64 (cosh.f64 im) (cosh.f64 im)) (*.f64 (sinh.f64 im) (sinh.f64 im))) (exp.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) (-.f64 (*.f64 (sinh.f64 im) (sinh.f64 im)) (*.f64 (cosh.f64 im) (sinh.f64 im)))))
(sqrt.f64 (exp.f64 (+.f64 im im)))
(-.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(fabs.f64 (neg.f64 (exp.f64 im)))
(fabs.f64 (exp.f64 im))
(exp.f64 im)
(+.f64 (cosh.f64 im) (sinh.f64 im))
(+.f64 (sinh.f64 im) (cosh.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (-.f64 (*.f64 (*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))) re) re) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.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 (fma.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 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) re) re #s(literal 1 binary64)))
#s(approx re re)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)) #s(literal 1/2 binary64)))
#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 (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) im) im) (cos.f64 re)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal -1/120 binary64))) im) im) im) im)) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 #s(literal -2 binary64) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 im im) #s(literal -2 binary64)) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2520 binary64) (*.f64 im im) #s(literal -1/60 binary64)) (*.f64 im im) #s(literal -1/3 binary64)) im) im #s(literal -2 binary64)) im))
#s(approx (exp (- 0 im)) (-.f64 #s(literal 1 binary64) im))
#s(approx (exp (- 0 im)) (fma.f64 (fma.f64 im #s(literal 1/2 binary64) #s(literal -1 binary64)) im #s(literal 1 binary64)))
#s(approx (exp (- 0 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 (- 0 im) (neg.f64 im))
#s(approx im im)
#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 (- 0 im)) (exp im)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
#s(approx (exp (- 0 im)) (exp.f64 (neg.f64 im)))
#s(approx (exp im) (exp.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)) #s(literal 1/2 binary64)))
#s(approx (- (exp (- 0 im)) (exp im)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
#s(approx (exp (- 0 im)) (exp.f64 (neg.f64 im)))

eval12.0ms (0.2%)

Memory
28.9MiB live, 28.9MiB allocated; 0ms collecting garbage
Compiler

Compiled 955 to 486 computations (49.1% saved)

prune32.0ms (0.6%)

Memory
-40.7MiB live, 13.9MiB allocated; 10ms collecting garbage
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1107117
Fresh000
Picked101
Done000
Total1117118
Accuracy
99.9%
Counts
118 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)) #s(literal 1/2 binary64))
42.0%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
40.0%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (-.f64 (*.f64 (*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))) re) re) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))))
83.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
62.4%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
67.3%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
53.5%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
Compiler

Compiled 248 to 244 computations (1.6% saved)

series87.0ms (1.6%)

Memory
4.2MiB live, 49.7MiB allocated; 5ms collecting garbage
Counts
27 → 78
Calls
Call 1
Inputs
(*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re))
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(*.f64 #s(literal 2 binary64) (sinh.f64 im))
#s(literal 2 binary64)
(sinh.f64 im)
im
(cos.f64 re)
re
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
#s(literal -1/4 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(-.f64 #s(literal 0 binary64) im)
#s(literal 0 binary64)
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
(*.f64 (neg.f64 im) (cos.f64 re))
(neg.f64 im)
Outputs
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (* -1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* 1/4 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/48 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/4 (- (exp im) (/ 1 (exp im)))))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/4 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/48 (- (exp im) (/ 1 (exp im)))) (* 1/1440 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* -1 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* 1/2 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/24 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/2 (- (exp im) (/ 1 (exp im)))))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/24 (- (exp im) (/ 1 (exp im)))) (* 1/720 (* (pow re 2) (- (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 (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (- (exp (neg im)) (exp im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 1/2))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* re re) #s(hole binary64 (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 (* (neg im) (cos re)) #s(hole binary64 (* -1 im)))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* 1/2 (* im (pow re 2))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (* -1/2 (* (cos re) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* -1 (* (cos re) (- (exp im) (/ 1 (exp im)))))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* 1/4 (* (pow re 2) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* (pow re 2) (+ (* -1/2 (/ (- (exp im) (/ 1 (exp im))) (pow re 2))) (* 1/4 (- (exp im) (/ 1 (exp im))))))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 (* -1/4 (pow re 2))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (* -1 (* im (cos re)))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* -2 (* im (cos re)))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* im (+ (* -2 (cos re)) (* -1/3 (* (pow im 2) (cos re)))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* -1/60 (* (pow im 2) (cos re)))))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* (pow im 2) (+ (* -1/60 (cos re)) (* -1/2520 (* (pow im 2) (cos re)))))))))))
#s(approx (neg (* 2 (sinh im))) #s(hole binary64 (* -2 im)))
#s(approx (neg (* 2 (sinh im))) #s(hole binary64 (* im (- (* -1/3 (pow im 2)) 2))))
#s(approx (neg (* 2 (sinh im))) #s(hole binary64 (* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))))
#s(approx (neg (* 2 (sinh im))) #s(hole binary64 (* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))))
#s(approx (* 2 (sinh im)) #s(hole binary64 (* 2 im)))
#s(approx (* 2 (sinh im)) #s(hole binary64 (* im (+ 2 (* 1/3 (pow im 2))))))
#s(approx (* 2 (sinh im)) #s(hole binary64 (* im (+ 2 (* (pow im 2) (+ 1/3 (* 1/60 (pow im 2))))))))
#s(approx (* 2 (sinh im)) #s(hole binary64 (* im (+ 2 (* (pow im 2) (+ 1/3 (* (pow im 2) (+ 1/60 (* 1/2520 (pow im 2))))))))))
#s(approx (sinh im) #s(hole binary64 im))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* 1/6 (pow im 2))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* 1/120 (pow im 2))))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* (pow im 2) (+ 1/120 (* 1/5040 (pow im 2))))))))))
#s(approx (* (neg (* 2 (sinh im))) 1/2) #s(hole binary64 (* im (- (* -1/6 (pow im 2)) 1))))
#s(approx (* (neg (* 2 (sinh im))) 1/2) #s(hole binary64 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))
#s(approx (* (neg (* 2 (sinh im))) 1/2) #s(hole binary64 (* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -2 (* im (+ 1/2 (* -1/4 (pow re 2)))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/3 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/60 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/60 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/2520 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 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 (neg (* 2 (sinh im))) #s(hole binary64 (- (/ 1 (exp im)) (exp im))))
#s(approx (* 2 (sinh im)) #s(hole binary64 (- (exp im) (/ 1 (exp im)))))
#s(approx (sinh im) #s(hole binary64 (* 1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -1 (* (+ 1/2 (* -1/4 (pow re 2))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (neg im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (neg im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (* -1 im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (* -1 im))))
Calls

6 calls:

TimeVariablePointExpression
5.0ms
im
@0
((* (* (neg (* 2 (sinh im))) (cos re)) 1/2) (* (neg (* 2 (sinh im))) (cos re)) (neg (* 2 (sinh im))) (* 2 (sinh im)) 2 (sinh im) im (cos re) re 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) 1/2) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (+ (* (* re re) -1/4) 1/2) (* re re) -1/4 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (- 0 im) 0 (exp im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg im) (cos re)) (neg im))
5.0ms
im
@inf
((* (* (neg (* 2 (sinh im))) (cos re)) 1/2) (* (neg (* 2 (sinh im))) (cos re)) (neg (* 2 (sinh im))) (* 2 (sinh im)) 2 (sinh im) im (cos re) re 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) 1/2) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (+ (* (* re re) -1/4) 1/2) (* re re) -1/4 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (- 0 im) 0 (exp im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg im) (cos re)) (neg im))
4.0ms
im
@-inf
((* (* (neg (* 2 (sinh im))) (cos re)) 1/2) (* (neg (* 2 (sinh im))) (cos re)) (neg (* 2 (sinh im))) (* 2 (sinh im)) 2 (sinh im) im (cos re) re 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) 1/2) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (+ (* (* re re) -1/4) 1/2) (* re re) -1/4 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (- 0 im) 0 (exp im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg im) (cos re)) (neg im))
4.0ms
re
@0
((* (* (neg (* 2 (sinh im))) (cos re)) 1/2) (* (neg (* 2 (sinh im))) (cos re)) (neg (* 2 (sinh im))) (* 2 (sinh im)) 2 (sinh im) im (cos re) re 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) 1/2) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (+ (* (* re re) -1/4) 1/2) (* re re) -1/4 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (- 0 im) 0 (exp im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg im) (cos re)) (neg im))
3.0ms
re
@inf
((* (* (neg (* 2 (sinh im))) (cos re)) 1/2) (* (neg (* 2 (sinh im))) (cos re)) (neg (* 2 (sinh im))) (* 2 (sinh im)) 2 (sinh im) im (cos re) re 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) 1/2) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (+ (* (* re re) -1/4) 1/2) (* re re) -1/4 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (- 0 im) 0 (exp im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg im) (cos re)) (neg im))

rewrite287.0ms (5.1%)

Memory
31.8MiB live, 301.0MiB allocated; 98ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04051940
04351696
127431696
087841608
1237371608
Stop Event
iter-limit
node-limit
iter-limit
Counts
105 → 255
Calls
Call 1
Inputs
(*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re))
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(*.f64 #s(literal 2 binary64) (sinh.f64 im))
#s(literal 2 binary64)
(sinh.f64 im)
im
(cos.f64 re)
re
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
#s(literal -1/4 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(-.f64 #s(literal 0 binary64) im)
#s(literal 0 binary64)
(exp.f64 im)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
(*.f64 (neg.f64 im) (cos.f64 re))
(neg.f64 im)
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (* -1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* 1/4 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/48 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/4 (- (exp im) (/ 1 (exp im)))))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/4 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/48 (- (exp im) (/ 1 (exp im)))) (* 1/1440 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* -1 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* 1/2 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/24 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/2 (- (exp im) (/ 1 (exp im)))))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/24 (- (exp im) (/ 1 (exp im)))) (* 1/720 (* (pow re 2) (- (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 (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (- (exp (neg im)) (exp im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 1/2))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 (+ 1/2 (* -1/4 (pow re 2)))))
#s(approx (* re re) #s(hole binary64 (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 (* (neg im) (cos re)) #s(hole binary64 (* -1 im)))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* 1/2 (* im (pow re 2))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (* -1/2 (* (cos re) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* -1 (* (cos re) (- (exp im) (/ 1 (exp im)))))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* 1/4 (* (pow re 2) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* (pow re 2) (+ (* -1/2 (/ (- (exp im) (/ 1 (exp im))) (pow re 2))) (* 1/4 (- (exp im) (/ 1 (exp im))))))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 (* -1/4 (pow re 2))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (* -1 (* im (cos re)))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))))
#s(approx (* (* (neg (* 2 (sinh im))) (cos re)) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* -2 (* im (cos re)))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* im (+ (* -2 (cos re)) (* -1/3 (* (pow im 2) (cos re)))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* -1/60 (* (pow im 2) (cos re)))))))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) #s(hole binary64 (* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* (pow im 2) (+ (* -1/60 (cos re)) (* -1/2520 (* (pow im 2) (cos re)))))))))))
#s(approx (neg (* 2 (sinh im))) #s(hole binary64 (* -2 im)))
#s(approx (neg (* 2 (sinh im))) #s(hole binary64 (* im (- (* -1/3 (pow im 2)) 2))))
#s(approx (neg (* 2 (sinh im))) #s(hole binary64 (* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))))
#s(approx (neg (* 2 (sinh im))) #s(hole binary64 (* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))))
#s(approx (* 2 (sinh im)) #s(hole binary64 (* 2 im)))
#s(approx (* 2 (sinh im)) #s(hole binary64 (* im (+ 2 (* 1/3 (pow im 2))))))
#s(approx (* 2 (sinh im)) #s(hole binary64 (* im (+ 2 (* (pow im 2) (+ 1/3 (* 1/60 (pow im 2))))))))
#s(approx (* 2 (sinh im)) #s(hole binary64 (* im (+ 2 (* (pow im 2) (+ 1/3 (* (pow im 2) (+ 1/60 (* 1/2520 (pow im 2))))))))))
#s(approx (sinh im) #s(hole binary64 im))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* 1/6 (pow im 2))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* 1/120 (pow im 2))))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* (pow im 2) (+ 1/120 (* 1/5040 (pow im 2))))))))))
#s(approx (* (neg (* 2 (sinh im))) 1/2) #s(hole binary64 (* im (- (* -1/6 (pow im 2)) 1))))
#s(approx (* (neg (* 2 (sinh im))) 1/2) #s(hole binary64 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))
#s(approx (* (neg (* 2 (sinh im))) 1/2) #s(hole binary64 (* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -2 (* im (+ 1/2 (* -1/4 (pow re 2)))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/3 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/60 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/60 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/2520 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 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 (neg (* 2 (sinh im))) #s(hole binary64 (- (/ 1 (exp im)) (exp im))))
#s(approx (* 2 (sinh im)) #s(hole binary64 (- (exp im) (/ 1 (exp im)))))
#s(approx (sinh im) #s(hole binary64 (* 1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -1 (* (+ 1/2 (* -1/4 (pow re 2))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (neg im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (neg im))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (* -1 im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (* -1 im))))
Outputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.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) (sinh.f64 im)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))
(*.f64 (neg.f64 (cos.f64 re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(*.f64 (*.f64 (cos.f64 re) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 re) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
(neg.f64 (*.f64 (cos.f64 re) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
(*.f64 #s(literal -2 binary64) (sinh.f64 im))
(*.f64 #s(literal -1 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(/.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (neg.f64 (exp.f64 im)) #s(literal 3 binary64))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (*.f64 (exp.f64 (neg.f64 im)) (neg.f64 (exp.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 (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)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(neg.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im)))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+.f64 (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im)))
(*.f64 (sinh.f64 im) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (/.f64 (+.f64 im im) #s(literal 2 binary64))) (cosh.f64 (/.f64 (-.f64 im im) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (sinh.f64 im))
(/.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (sinh.f64 im) (sinh.f64 im) (-.f64 (*.f64 (sinh.f64 im) (sinh.f64 im)) (*.f64 (sinh.f64 im) (sinh.f64 im)))))
(/.f64 (+.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (pow.f64 (neg.f64 (exp.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))) (*.f64 (exp.f64 im) (neg.f64 (exp.f64 (neg.f64 im)))))))
(/.f64 (fma.f64 (sinh.f64 im) #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal 2 binary64))
(/.f64 (fma.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) #s(literal 4 binary64))
(/.f64 (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 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))) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(neg.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
(-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (sinh.f64 im) (sinh.f64 im))
(+.f64 (exp.f64 im) (neg.f64 (exp.f64 (neg.f64 im))))
#s(literal 2 binary64)
(/.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal -2 binary64))
(sinh.f64 im)
(-.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (sinh.f64 im) #s(literal 2 binary64)) (/.f64 (sinh.f64 im) #s(literal 2 binary64)))
(+.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (neg.f64 (exp.f64 (neg.f64 im))) #s(literal 2 binary64)))
im
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (fabs.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 (fabs.f64 re)))
(cos.f64 (fabs.f64 (fabs.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 (fabs.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(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
(neg.f64 (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))
(*.f64 (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal -1 binary64))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
(*.f64 #s(literal -1 binary64) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) #s(literal 3 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 3 binary64)) #s(literal 1/8 binary64) (*.f64 #s(literal -1/64 binary64) (pow.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))))))
(/.f64 (-.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 3 binary64))) (pow.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (*.f64 #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (*.f64 #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))))))
(/.f64 (-.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 3 binary64))) (pow.f64 (neg.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (neg.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 3 binary64)) #s(literal -1/64 binary64) (*.f64 (pow.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))))))
(neg.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
(fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal -1/4 binary64) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))
(fma.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 re re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))
(-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (*.f64 #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))
(-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (neg.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 3 binary64)) #s(literal -1/8 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 re re))))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal -1/64 binary64) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal -1/2 binary64))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 re re)))
(-.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64))))
(+.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))
(*.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)))
(*.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)))
(*.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 re)))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 re re)
(pow.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 (fabs.f64 re) #s(literal 2 binary64))
(pow.f64 re #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 re re) (*.f64 re re)))
(fabs.f64 (neg.f64 (*.f64 re re)))
(fabs.f64 (*.f64 re re))
#s(literal -1/4 binary64)
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
(*.f64 #s(literal -2 binary64) (sinh.f64 im))
(*.f64 #s(literal -1 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(/.f64 (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (neg.f64 (exp.f64 im)) #s(literal 3 binary64))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (-.f64 (exp.f64 (+.f64 im im)) (*.f64 (exp.f64 (neg.f64 im)) (neg.f64 (exp.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 (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)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(neg.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im)))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+.f64 (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im)))
(*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) im)
(pow.f64 (exp.f64 im) #s(literal -1 binary64))
(/.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 (-.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 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 im))))
(/.f64 #s(literal 1 binary64) (exp.f64 (-.f64 im #s(literal 0 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (exp.f64 im) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (exp.f64 im))
(sqrt.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))
(-.f64 (cosh.f64 im) (sinh.f64 (-.f64 im #s(literal 0 binary64))))
(-.f64 (cosh.f64 im) (sinh.f64 im))
(fabs.f64 (-.f64 (sinh.f64 im) (cosh.f64 im)))
(fabs.f64 (neg.f64 (exp.f64 (neg.f64 im))))
(fabs.f64 (exp.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(*.f64 #s(literal -1 binary64) im)
(*.f64 im #s(literal -1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (neg.f64 im))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (neg.f64 im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))
(neg.f64 (-.f64 im #s(literal 0 binary64)))
(neg.f64 im)
(-.f64 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))
#s(literal 0 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)))))
(sqrt.f64 (exp.f64 (+.f64 im im)))
(fabs.f64 (neg.f64 (exp.f64 im)))
(fabs.f64 (exp.f64 im))
(exp.f64 im)
(+.f64 (cosh.f64 im) (sinh.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
(*.f64 (*.f64 (cos.f64 re) im) #s(literal -1 binary64))
(*.f64 (neg.f64 im) (cos.f64 re))
(*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 re) im))
(*.f64 (cos.f64 re) (neg.f64 im))
(neg.f64 (*.f64 (cos.f64 re) im))
(*.f64 #s(literal -1 binary64) im)
(*.f64 im #s(literal -1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (neg.f64 im))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (neg.f64 im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))
(neg.f64 (-.f64 im #s(literal 0 binary64)))
(neg.f64 im)
(-.f64 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/48 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 1/4 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) (*.f64 re re) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/1440 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal -1/48 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) (*.f64 re re) (*.f64 #s(literal 1/4 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) (*.f64 re re) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) (fma.f64 #s(literal -2 binary64) (sinh.f64 im) (*.f64 (fma.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1/2 binary64))) (*.f64 re re))))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) (fma.f64 #s(literal -2 binary64) (sinh.f64 im) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal -1/24 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) (*.f64 re re) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1/2 binary64))) (*.f64 re re))))
#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 (fma.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 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx re re)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)) (*.f64 #s(literal 1/48 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))) (*.f64 re re) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(literal 1/2 binary64))
#s(approx (+ (* (* re re) -1/4) 1/2) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (* re re) (*.f64 re re))
#s(approx (* 1/2 (cos re)) (fma.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 (fma.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 (* (neg im) (cos re)) (neg.f64 im))
#s(approx (* (neg im) (cos re)) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal 1/2 binary64) (neg.f64 im)))
#s(approx (* (neg im) (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal -1/24 binary64) (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 im)))
#s(approx (* (neg im) (cos re)) (fma.f64 (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal 1/720 binary64) (*.f64 #s(literal -1/24 binary64) im)) (*.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal -1/2 binary64)))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))
#s(approx (cos re) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (/.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) (*.f64 re re)))
#s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))
#s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re)))
#s(approx (* 1/2 (cos re)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
#s(approx (* (neg im) (cos re)) (*.f64 (neg.f64 im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (cos.f64 re) (neg.f64 (cos.f64 re))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/6 binary64) (cos.f64 re))) (*.f64 im im) (neg.f64 (cos.f64 re))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/120 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 #s(literal -1/6 binary64) (cos.f64 re))) (*.f64 im im) (neg.f64 (cos.f64 re))) im))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) (*.f64 (*.f64 (cos.f64 re) im) #s(literal -2 binary64)))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) (*.f64 (fma.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -2 binary64) (cos.f64 re))) im))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/3 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 #s(literal -2 binary64) (cos.f64 re))) im))
#s(approx (* (neg (* 2 (sinh im))) (cos re)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/60 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 #s(literal -1/3 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 #s(literal -2 binary64) (cos.f64 re))) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 #s(literal -2 binary64) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 im im) #s(literal -2 binary64)) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/2520 binary64) (*.f64 im im) #s(literal -1/60 binary64)) (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 im im) #s(literal -2 binary64)) im))
#s(approx (* 2 (sinh im)) (+.f64 im im))
#s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))
#s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))
#s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))
#s(approx (sinh im) im)
#s(approx (sinh im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) im))
#s(approx (sinh im) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)) im))
#s(approx (sinh im) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)) im))
#s(approx (* (neg (* 2 (sinh im))) 1/2) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im))
#s(approx (* (neg (* 2 (sinh im))) 1/2) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) im))
#s(approx (* (neg (* 2 (sinh im))) 1/2) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal -1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) im))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) im) #s(literal -2 binary64)))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(literal -1/3 binary64) (*.f64 #s(literal -2 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) im))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(literal -1/60 binary64) (*.f64 #s(literal -1/3 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) (*.f64 im im) (*.f64 #s(literal -2 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) im))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(literal -1/2520 binary64) (*.f64 #s(literal -1/60 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) (*.f64 im im) (*.f64 #s(literal -1/3 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) (*.f64 im im) (*.f64 #s(literal -2 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) im))
#s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64)))
#s(approx (exp (- 0 im)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal -1 binary64)) im #s(literal 1 binary64)))
#s(approx (exp (- 0 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 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 (- (exp (- 0 im)) (exp im)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
#s(approx (* 2 (sinh im)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
#s(approx (sinh im) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
#s(approx (exp (- 0 im)) (exp.f64 (neg.f64 im)))
#s(approx (exp im) (exp.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
#s(approx (exp (- 0 im)) (exp.f64 (neg.f64 im)))

eval41.0ms (0.7%)

Memory
3.8MiB live, 63.4MiB allocated; 17ms collecting garbage
Compiler

Compiled 3 154 to 1 190 computations (62.3% saved)

prune16.0ms (0.3%)

Memory
-18.7MiB live, 28.9MiB allocated; 2ms collecting garbage
Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New30412316
Fresh112
Picked415
Done000
Total30914323
Accuracy
99.9%
Counts
323 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (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)))))) #s(literal 1/2 binary64))
99.9%
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
67.3%
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
5.3%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
42.0%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) (exp.f64 im)))
83.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
53.3%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (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)))))))
53.5%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
35.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
53.2%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
11.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
54.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) 1/2) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im)))
39.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal -1/24 binary64) (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 im))))
30.6%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
Compiler

Compiled 529 to 505 computations (4.5% saved)

series24.0ms (0.4%)

Memory
-2.1MiB live, 43.8MiB allocated; 3ms collecting garbage
Counts
31 → 89
Calls
Call 1
Inputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
(cos.f64 re)
re
(*.f64 #s(literal -2 binary64) (sinh.f64 im))
#s(literal -2 binary64)
(sinh.f64 im)
im
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
#s(approx (* (neg im) (cos re)) (neg.f64 im))
(neg.f64 im)
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im))
(*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)
(fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64))
#s(literal -1/3 binary64)
(*.f64 im im)
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
#s(literal -1/4 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
(*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im)
(*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))
(*.f64 #s(literal -1/6 binary64) im)
#s(literal -1/6 binary64)
#s(literal -1 binary64)
Outputs
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (* -1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* 1/4 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/48 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/4 (- (exp im) (/ 1 (exp im)))))))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/4 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/48 (- (exp im) (/ 1 (exp im)))) (* 1/1440 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* -1 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* 1/2 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/24 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/2 (- (exp im) (/ 1 (exp im)))))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/24 (- (exp im) (/ 1 (exp im)))) (* 1/720 (* (pow re 2) (- (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 (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (- (exp (neg im)) (exp im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (* -1 im)))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* 1/2 (* im (pow re 2))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 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 (* re re) #s(hole binary64 (pow re 2)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* im (- (* -1/6 (pow im 2)) 1))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* -1/2 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))) (* im (- (* -1/6 (pow im 2)) 1)))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* im (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/2 (* im (- (* -1/6 (pow im 2)) 1))) (* 1/24 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* im (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/2 (* im (- (* -1/6 (pow im 2)) 1))) (* (pow re 2) (+ (* -1/720 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))) (* 1/24 (* im (- (* -1/6 (pow im 2)) 1))))))))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (* -1/6 (pow im 2)) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/2 (* (pow re 2) (- (* -1/6 (pow im 2)) 1))) (* -1/6 (pow im 2))) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/6 (pow im 2)) (* (pow re 2) (+ (* -1/2 (- (* -1/6 (pow im 2)) 1)) (* 1/24 (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))))) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/6 (pow im 2)) (* (pow re 2) (+ (* -1/2 (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (* -1/6 (pow im 2)) 1))) (* 1/24 (- (* -1/6 (pow im 2)) 1))))))) 1)))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (* -1/2 (* (cos re) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* -1 (* (cos re) (- (exp im) (/ 1 (exp im)))))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (* -1 (* im (cos re)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/2 (/ (- (exp (neg im)) (exp im)) (pow re 2)))))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 (* -1/4 (pow re 2))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* im (* (cos re) (- (* -1/6 (pow im 2)) 1)))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* (cos re) (- (* -1/6 (pow im 2)) 1))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* -2 (* im (cos re)))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (cos re)) (* -1/3 (* (pow im 2) (cos re)))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* -1/60 (* (pow im 2) (cos re)))))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* (pow im 2) (+ (* -1/60 (cos re)) (* -1/2520 (* (pow im 2) (cos re)))))))))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* -2 im)))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* -1/3 (pow im 2)) 2))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))))
#s(approx (sinh im) #s(hole binary64 im))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* 1/6 (pow im 2))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* 1/120 (pow im 2))))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* (pow im 2) (+ 1/120 (* 1/5040 (pow im 2))))))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -2 (* im (+ 1/2 (* -1/4 (pow re 2)))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/3 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/60 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/60 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/2520 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))))
#s(approx (+ (* -1/3 (* im im)) -2) #s(hole binary64 -2))
#s(approx (+ (* -1/3 (* im im)) -2) #s(hole binary64 (- (* -1/3 (pow im 2)) 2)))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* -1 (cos re))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re))))))
#s(approx (+ (* (* -1/6 im) im) -1) #s(hole binary64 -1))
#s(approx (* -1/6 im) #s(hole binary64 (* -1/6 im)))
#s(approx (sinh im) #s(hole binary64 (* 1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* (+ 1/2 (* -1/4 (pow re 2))) (- (exp (neg im)) (exp im)))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (neg im)) (exp im))))
#s(approx (* (+ (* -1/3 (* im im)) -2) im) #s(hole binary64 (* -1/3 (pow im 3))))
#s(approx (* (+ (* -1/3 (* im im)) -2) im) #s(hole binary64 (* -1 (* (pow im 3) (+ 1/3 (* 2 (/ 1 (pow im 2))))))))
#s(approx (+ (* -1/3 (* im im)) -2) #s(hole binary64 (* -1/3 (pow im 2))))
#s(approx (+ (* -1/3 (* im im)) -2) #s(hole binary64 (* -1 (* (pow im 2) (+ 1/3 (* 2 (/ 1 (pow im 2))))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* -1/6 (* (pow im 3) (cos re)))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* (pow im 3) (+ (* -1 (/ (cos re) (pow im 2))) (* -1/6 (cos re))))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* -1/6 (* (pow im 2) (cos re)))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* (pow im 2) (+ (* -1 (/ (cos re) (pow im 2))) (* -1/6 (cos re))))))
#s(approx (+ (* (* -1/6 im) im) -1) #s(hole binary64 (* -1/6 (pow im 2))))
#s(approx (+ (* (* -1/6 im) im) -1) #s(hole binary64 (* -1 (* (pow im 2) (+ 1/6 (/ 1 (pow im 2)))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* (+ 1/2 (* -1/4 (pow re 2))) (- (exp (* -1 im)) (exp im)))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (* -1 im)) (exp im))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* -1 (* (pow im 3) (+ (* 1/6 (cos re)) (/ (cos re) (pow im 2)))))))
Calls

6 calls:

TimeVariablePointExpression
6.0ms
im
@-inf
((* (* (cos re) (* -2 (sinh im))) 1/2) (* (cos re) (* -2 (sinh im))) (cos re) re (* -2 (sinh im)) -2 (sinh im) im 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg im) (cos re)) (neg im) (* (* -2 (sinh im)) (* 1/2 (cos re))) (* 1/2 (cos re)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (- (exp (- 0 im)) (exp im)) (* (+ (* -1/3 (* im im)) -2) im) (+ (* -1/3 (* im im)) -2) -1/3 (* im im) (+ (* (* re re) -1/4) 1/2) (* re re) -1/4 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (* (cos re) (+ (* (* -1/6 im) im) -1)) (+ (* (* -1/6 im) im) -1) (* -1/6 im) -1/6 -1)
5.0ms
im
@inf
((* (* (cos re) (* -2 (sinh im))) 1/2) (* (cos re) (* -2 (sinh im))) (cos re) re (* -2 (sinh im)) -2 (sinh im) im 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg im) (cos re)) (neg im) (* (* -2 (sinh im)) (* 1/2 (cos re))) (* 1/2 (cos re)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (- (exp (- 0 im)) (exp im)) (* (+ (* -1/3 (* im im)) -2) im) (+ (* -1/3 (* im im)) -2) -1/3 (* im im) (+ (* (* re re) -1/4) 1/2) (* re re) -1/4 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (* (cos re) (+ (* (* -1/6 im) im) -1)) (+ (* (* -1/6 im) im) -1) (* -1/6 im) -1/6 -1)
4.0ms
re
@inf
((* (* (cos re) (* -2 (sinh im))) 1/2) (* (cos re) (* -2 (sinh im))) (cos re) re (* -2 (sinh im)) -2 (sinh im) im 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg im) (cos re)) (neg im) (* (* -2 (sinh im)) (* 1/2 (cos re))) (* 1/2 (cos re)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (- (exp (- 0 im)) (exp im)) (* (+ (* -1/3 (* im im)) -2) im) (+ (* -1/3 (* im im)) -2) -1/3 (* im im) (+ (* (* re re) -1/4) 1/2) (* re re) -1/4 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (* (cos re) (+ (* (* -1/6 im) im) -1)) (+ (* (* -1/6 im) im) -1) (* -1/6 im) -1/6 -1)
3.0ms
re
@-inf
((* (* (cos re) (* -2 (sinh im))) 1/2) (* (cos re) (* -2 (sinh im))) (cos re) re (* -2 (sinh im)) -2 (sinh im) im 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg im) (cos re)) (neg im) (* (* -2 (sinh im)) (* 1/2 (cos re))) (* 1/2 (cos re)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (- (exp (- 0 im)) (exp im)) (* (+ (* -1/3 (* im im)) -2) im) (+ (* -1/3 (* im im)) -2) -1/3 (* im im) (+ (* (* re re) -1/4) 1/2) (* re re) -1/4 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (* (cos re) (+ (* (* -1/6 im) im) -1)) (+ (* (* -1/6 im) im) -1) (* -1/6 im) -1/6 -1)
3.0ms
im
@0
((* (* (cos re) (* -2 (sinh im))) 1/2) (* (cos re) (* -2 (sinh im))) (cos re) re (* -2 (sinh im)) -2 (sinh im) im 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg im) (cos re)) (neg im) (* (* -2 (sinh im)) (* 1/2 (cos re))) (* 1/2 (cos re)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (- (exp (- 0 im)) (exp im)) (* (+ (* -1/3 (* im im)) -2) im) (+ (* -1/3 (* im im)) -2) -1/3 (* im im) (+ (* (* re re) -1/4) 1/2) (* re re) -1/4 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (* (cos re) (+ (* (* -1/6 im) im) -1)) (+ (* (* -1/6 im) im) -1) (* -1/6 im) -1/6 -1)

rewrite328.0ms (5.9%)

Memory
35.7MiB live, 259.5MiB allocated; 38ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04332440
04592310
128702224
092222143
1248602143
Stop Event
iter-limit
node-limit
iter-limit
Counts
120 → 258
Calls
Call 1
Inputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
(cos.f64 re)
re
(*.f64 #s(literal -2 binary64) (sinh.f64 im))
#s(literal -2 binary64)
(sinh.f64 im)
im
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
#s(approx (* (neg im) (cos re)) (neg.f64 im))
(neg.f64 im)
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im))
(*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)
(fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64))
#s(literal -1/3 binary64)
(*.f64 im im)
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
#s(literal -1/4 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
(*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im)
(*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))
(*.f64 #s(literal -1/6 binary64) im)
#s(literal -1/6 binary64)
#s(literal -1 binary64)
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (* -1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* 1/4 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/48 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/4 (- (exp im) (/ 1 (exp im)))))))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/4 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/48 (- (exp im) (/ 1 (exp im)))) (* 1/1440 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* -1 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* 1/2 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/24 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/2 (- (exp im) (/ 1 (exp im)))))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/24 (- (exp im) (/ 1 (exp im)))) (* 1/720 (* (pow re 2) (- (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 (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (- (exp (neg im)) (exp im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (* -1 im)))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* 1/2 (* im (pow re 2))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 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 (* re re) #s(hole binary64 (pow re 2)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* im (- (* -1/6 (pow im 2)) 1))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* -1/2 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))) (* im (- (* -1/6 (pow im 2)) 1)))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* im (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/2 (* im (- (* -1/6 (pow im 2)) 1))) (* 1/24 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* im (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/2 (* im (- (* -1/6 (pow im 2)) 1))) (* (pow re 2) (+ (* -1/720 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))) (* 1/24 (* im (- (* -1/6 (pow im 2)) 1))))))))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (* -1/6 (pow im 2)) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/2 (* (pow re 2) (- (* -1/6 (pow im 2)) 1))) (* -1/6 (pow im 2))) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/6 (pow im 2)) (* (pow re 2) (+ (* -1/2 (- (* -1/6 (pow im 2)) 1)) (* 1/24 (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))))) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/6 (pow im 2)) (* (pow re 2) (+ (* -1/2 (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (* -1/6 (pow im 2)) 1))) (* 1/24 (- (* -1/6 (pow im 2)) 1))))))) 1)))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (* -1/2 (* (cos re) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* -1 (* (cos re) (- (exp im) (/ 1 (exp im)))))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))))
#s(approx (* (neg im) (cos re)) #s(hole binary64 (* -1 (* im (cos re)))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/2 (/ (- (exp (neg im)) (exp im)) (pow re 2)))))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 (* -1/4 (pow re 2))))
#s(approx (+ (* (* re re) -1/4) 1/2) #s(hole binary64 (* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* im (* (cos re) (- (* -1/6 (pow im 2)) 1)))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* (cos re) (- (* -1/6 (pow im 2)) 1))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* -2 (* im (cos re)))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (cos re)) (* -1/3 (* (pow im 2) (cos re)))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* -1/60 (* (pow im 2) (cos re)))))))))
#s(approx (* (cos re) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* (pow im 2) (+ (* -1/60 (cos re)) (* -1/2520 (* (pow im 2) (cos re)))))))))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* -2 im)))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* -1/3 (pow im 2)) 2))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))))
#s(approx (sinh im) #s(hole binary64 im))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* 1/6 (pow im 2))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* 1/120 (pow im 2))))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* (pow im 2) (+ 1/120 (* 1/5040 (pow im 2))))))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -2 (* im (+ 1/2 (* -1/4 (pow re 2)))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/3 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/60 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/60 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/2520 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))))
#s(approx (+ (* -1/3 (* im im)) -2) #s(hole binary64 -2))
#s(approx (+ (* -1/3 (* im im)) -2) #s(hole binary64 (- (* -1/3 (pow im 2)) 2)))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* -1 (cos re))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re))))))
#s(approx (+ (* (* -1/6 im) im) -1) #s(hole binary64 -1))
#s(approx (* -1/6 im) #s(hole binary64 (* -1/6 im)))
#s(approx (sinh im) #s(hole binary64 (* 1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* (+ 1/2 (* -1/4 (pow re 2))) (- (exp (neg im)) (exp im)))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (neg im)) (exp im))))
#s(approx (* (+ (* -1/3 (* im im)) -2) im) #s(hole binary64 (* -1/3 (pow im 3))))
#s(approx (* (+ (* -1/3 (* im im)) -2) im) #s(hole binary64 (* -1 (* (pow im 3) (+ 1/3 (* 2 (/ 1 (pow im 2))))))))
#s(approx (+ (* -1/3 (* im im)) -2) #s(hole binary64 (* -1/3 (pow im 2))))
#s(approx (+ (* -1/3 (* im im)) -2) #s(hole binary64 (* -1 (* (pow im 2) (+ 1/3 (* 2 (/ 1 (pow im 2))))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* -1/6 (* (pow im 3) (cos re)))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* (pow im 3) (+ (* -1 (/ (cos re) (pow im 2))) (* -1/6 (cos re))))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* -1/6 (* (pow im 2) (cos re)))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* (pow im 2) (+ (* -1 (/ (cos re) (pow im 2))) (* -1/6 (cos re))))))
#s(approx (+ (* (* -1/6 im) im) -1) #s(hole binary64 (* -1/6 (pow im 2))))
#s(approx (+ (* (* -1/6 im) im) -1) #s(hole binary64 (* -1 (* (pow im 2) (+ 1/6 (/ 1 (pow im 2)))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* (+ 1/2 (* -1/4 (pow re 2))) (- (exp (* -1 im)) (exp im)))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (* -1 im)) (exp im))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* -1 (* (pow im 3) (+ (* 1/6 (cos re)) (/ (cos re) (pow im 2)))))))
Outputs
(*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal -2 binary64)) (sinh.f64 im)) #s(literal 1/2 binary64))
(*.f64 (cos.f64 re) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 re) #s(literal -2 binary64)) (sinh.f64 im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal -2 binary64)) (sinh.f64 im))
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 (sinh.f64 im) #s(literal -2 binary64)))
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (fabs.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 (fabs.f64 re)))
(cos.f64 (fabs.f64 (fabs.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 (fabs.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 (sinh.f64 im) #s(literal -2 binary64))
(*.f64 #s(literal -2 binary64) (sinh.f64 im))
#s(literal -2 binary64)
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal -2 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal 2 binary64))
(sinh.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 im) #s(literal 2 binary64)) (/.f64 (neg.f64 (exp.f64 (neg.f64 im))) #s(literal 2 binary64)))
im
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
#s(approx (* (neg im) (cos re)) (neg.f64 im))
(*.f64 #s(literal -1 binary64) im)
(*.f64 im #s(literal -1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (neg.f64 im))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (neg.f64 im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))
(neg.f64 (-.f64 im #s(literal 0 binary64)))
(neg.f64 im)
(-.f64 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 im) #s(literal -2 binary64)))
(*.f64 #s(literal -2 binary64) (*.f64 (sinh.f64 im) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)))
(*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) (-.f64 (*.f64 (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) #s(literal 1/2 binary64)) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))) (*.f64 #s(literal 1/2 binary64) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)))) (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))) (*.f64 #s(literal 1/2 binary64) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)))))))
(fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) (*.f64 #s(literal 1/2 binary64) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))))
(fma.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) #s(literal 1/2 binary64)))
(+.f64 (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))) (*.f64 #s(literal 1/2 binary64) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))
(*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im)
(*.f64 im (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)))
(/.f64 (+.f64 #s(literal -8 binary64) (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 4 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 (*.f64 im im) #s(literal -1/3 binary64))) (*.f64 #s(literal -2 binary64) (*.f64 (*.f64 im im) #s(literal -1/3 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 (*.f64 im im) #s(literal -1/3 binary64))) #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal -2 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 (*.f64 im im) #s(literal -1/3 binary64))) #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/27 binary64) #s(literal -8 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) (-.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal -2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 3 binary64)) #s(literal 8 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)))))
(neg.f64 (-.f64 #s(literal 2 binary64) (*.f64 (*.f64 im im) #s(literal -1/3 binary64))))
(fma.f64 (*.f64 #s(literal -1/3 binary64) im) im #s(literal -2 binary64))
(fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64))
(fma.f64 #s(literal 2 binary64) #s(literal -1 binary64) (*.f64 (*.f64 im im) #s(literal -1/3 binary64)))
(fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64))
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64))
(+.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal -2 binary64))
(+.f64 #s(literal -2 binary64) (*.f64 (*.f64 im im) #s(literal -1/3 binary64)))
#s(literal -1/3 binary64)
(*.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 im)))
(*.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)))
(*.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)))
(*.f64 (-.f64 im #s(literal 0 binary64)) (-.f64 im #s(literal 0 binary64)))
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 im im)
(pow.f64 (fabs.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(pow.f64 (-.f64 im #s(literal 0 binary64)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 im) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 im #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(sqrt.f64 (*.f64 (*.f64 im im) (*.f64 im im)))
(fabs.f64 (neg.f64 (*.f64 im im)))
(fabs.f64 (*.f64 im im))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 3 binary64)) #s(literal -1/8 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal -1/2 binary64)))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 re re))))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal -1/64 binary64) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64))))))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal -1/2 binary64))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 re re)))
(-.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64))))
(+.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))
(*.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)))
(*.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)))
(*.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 re)))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 re re)
(pow.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 (fabs.f64 re) #s(literal 2 binary64))
(pow.f64 re #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re)))
(sqrt.f64 (*.f64 (*.f64 re re) (*.f64 re re)))
(fabs.f64 (neg.f64 (*.f64 re re)))
(fabs.f64 (*.f64 re re))
#s(literal -1/4 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
(*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (cos.f64 re)) im)
(*.f64 (cos.f64 re) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im))
(*.f64 im (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (cos.f64 re)))
(/.f64 (+.f64 (pow.f64 (*.f64 im (neg.f64 (cos.f64 re))) #s(literal 3 binary64)) (pow.f64 (*.f64 im (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 im (neg.f64 (cos.f64 re))) (*.f64 im (neg.f64 (cos.f64 re))) (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64))) (*.f64 im (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)))) (*.f64 (*.f64 im (neg.f64 (cos.f64 re))) (*.f64 im (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (neg.f64 (cos.f64 re)) im) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) im) #s(literal 3 binary64))) (fma.f64 (*.f64 (neg.f64 (cos.f64 re)) im) (*.f64 (neg.f64 (cos.f64 re)) im) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) im) (*.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) im)) (*.f64 (*.f64 (neg.f64 (cos.f64 re)) im) (*.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) im)))))
(fma.f64 (neg.f64 (cos.f64 re)) im (*.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) im))
(fma.f64 im (neg.f64 (cos.f64 re)) (*.f64 im (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64))))
(+.f64 (*.f64 im (neg.f64 (cos.f64 re))) (*.f64 im (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64))))
(+.f64 (*.f64 (neg.f64 (cos.f64 re)) im) (*.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) im))
(*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 3 binary64)) (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) (*.f64 (cos.f64 re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) (-.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 (cos.f64 re))))))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) (neg.f64 (cos.f64 re))))))
(/.f64 (-.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 im im) (cos.f64 re))) #s(literal 3 binary64))) (+.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 im im) (cos.f64 re))) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 im im) (cos.f64 re))) (*.f64 (neg.f64 (cos.f64 re)) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 im im) (cos.f64 re)))))))
(/.f64 (-.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (neg.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 (neg.f64 (cos.f64 re)) (neg.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)))))))
(/.f64 (-.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 (neg.f64 (cos.f64 re)) (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64))))
(/.f64 (+.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 (neg.f64 (cos.f64 re)) (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64))))))
(fma.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64) (neg.f64 (cos.f64 re)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (cos.f64 re) (neg.f64 (cos.f64 re)))
(fma.f64 #s(literal -1 binary64) (cos.f64 re) (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 im im) (cos.f64 re)) (neg.f64 (cos.f64 re)))
(fma.f64 (cos.f64 re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (neg.f64 (cos.f64 re)))
(fma.f64 (cos.f64 re) #s(literal -1 binary64) (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)))
(-.f64 (neg.f64 (cos.f64 re)) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 im im) (cos.f64 re))))
(-.f64 (neg.f64 (cos.f64 re)) (neg.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64))))
(+.f64 (*.f64 (cos.f64 re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 (cos.f64 re)))
(+.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) (neg.f64 (cos.f64 re)))
(+.f64 (neg.f64 (cos.f64 re)) (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)))
(*.f64 (*.f64 #s(literal -1 binary64) (*.f64 im im)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)))
(*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (fma.f64 #s(literal 1/6 binary64) (*.f64 im im) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal -1 binary64) (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) (*.f64 #s(literal -1 binary64) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal -1 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal -1 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)))))
(neg.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal -1 binary64))
(fma.f64 im (*.f64 #s(literal -1/6 binary64) im) #s(literal -1 binary64))
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(+.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))
(*.f64 #s(literal -1/6 binary64) im)
(*.f64 im #s(literal -1/6 binary64))
#s(literal -1/6 binary64)
#s(literal -1 binary64)
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal -1/2 binary64)))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal -1/2 binary64))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (fma.f64 (fma.f64 (*.f64 #s(literal -1/48 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (*.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal -1/2 binary64))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/1440 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (*.f64 #s(literal -1/48 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) (*.f64 re re) (*.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal -1/2 binary64))))
#s(approx (* (cos re) (* -2 (sinh im))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
#s(approx (* (cos re) (* -2 (sinh im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))))
#s(approx (* (cos re) (* -2 (sinh im))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))) (*.f64 re re) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))))
#s(approx (* (cos re) (* -2 (sinh im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (*.f64 #s(literal -1/24 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) (*.f64 re re) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))) (*.f64 re re) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))))
#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 (fma.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 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx re re)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/48 binary64))) (*.f64 re re) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))))
#s(approx (* (neg im) (cos re)) (neg.f64 im))
#s(approx (* (neg im) (cos re)) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal 1/2 binary64) (neg.f64 im)))
#s(approx (* (neg im) (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal -1/24 binary64) (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 im)))
#s(approx (* (neg im) (cos re)) (fma.f64 (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal 1/720 binary64) (*.f64 #s(literal -1/24 binary64) im)) (*.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) (neg.f64 im)))
#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 (fma.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 (* re re) (*.f64 re re))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (fma.f64 (*.f64 (*.f64 (*.f64 re re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) #s(literal 1/24 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im) #s(literal -1/2 binary64))) (*.f64 re re) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) #s(literal -1/720 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im) #s(literal 1/24 binary64))) (*.f64 re re))) (*.f64 re re))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (*.f64 re re)) #s(literal -1/2 binary64) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (-.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (*.f64 re re)) #s(literal 1/24 binary64) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) #s(literal -1/2 binary64))) (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 1 binary64)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (-.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (*.f64 re re)) #s(literal -1/720 binary64) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) #s(literal 1/24 binary64))) (*.f64 re re) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) #s(literal -1/2 binary64))) (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 1 binary64)))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal -1/2 binary64)))
#s(approx (* (cos re) (* -2 (sinh im))) (neg.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))))
#s(approx (cos re) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)) #s(literal 1/2 binary64)))
#s(approx (* (neg im) (cos re)) (*.f64 (neg.f64 im) (cos.f64 re)))
#s(approx (* 1/2 (cos re)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 re re)) #s(literal -1/4 binary64)))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) (neg.f64 (*.f64 re re))) #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal -1/4 binary64))) (*.f64 re re)))
#s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))
#s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (cos.f64 re)))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/6 binary64) (cos.f64 re))) (*.f64 im im) (neg.f64 (cos.f64 re))) im))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/120 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 #s(literal -1/6 binary64) (cos.f64 re))) (*.f64 im im) (neg.f64 (cos.f64 re))) im))
#s(approx (* (cos re) (* -2 (sinh im))) (*.f64 (*.f64 (cos.f64 re) im) #s(literal -2 binary64)))
#s(approx (* (cos re) (* -2 (sinh im))) (*.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal -2 binary64))) im))
#s(approx (* (cos re) (* -2 (sinh im))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/3 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal -2 binary64))) im))
#s(approx (* (cos re) (* -2 (sinh im))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/60 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 #s(literal -1/3 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal -2 binary64))) im))
#s(approx (* -2 (sinh im)) (*.f64 im #s(literal -2 binary64)))
#s(approx (* -2 (sinh im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)) im))
#s(approx (* -2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 im im) #s(literal -2 binary64)) im))
#s(approx (* -2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/2520 binary64) (*.f64 im im) #s(literal -1/60 binary64)) (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 im im) #s(literal -2 binary64)) im))
#s(approx (sinh im) im)
#s(approx (sinh im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 im im) #s(literal 1 binary64)) im))
#s(approx (sinh im) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)) im))
#s(approx (sinh im) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)) im))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) im) #s(literal -2 binary64)))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(literal -1/3 binary64) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) #s(literal -2 binary64))) im))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(literal -1/60 binary64) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) #s(literal -1/3 binary64))) (*.f64 im im) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) #s(literal -2 binary64))) im))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 im im) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(literal -1/2520 binary64) (*.f64 #s(literal -1/60 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) (*.f64 im im) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) #s(literal -1/3 binary64))) (*.f64 im im) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) #s(literal -2 binary64))) im))
#s(approx (+ (* -1/3 (* im im)) -2) #s(literal -2 binary64))
#s(approx (+ (* -1/3 (* im im)) -2) (fma.f64 (*.f64 im im) #s(literal -1/3 binary64) #s(literal -2 binary64)))
#s(approx (* im im) (*.f64 im im))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (neg.f64 (cos.f64 re)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (cos.f64 re)))
#s(approx (+ (* (* -1/6 im) im) -1) #s(literal -1 binary64))
#s(approx (* -1/6 im) (*.f64 #s(literal -1/6 binary64) im))
#s(approx (sinh im) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (- (exp (- 0 im)) (exp im)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
#s(approx (* (+ (* -1/3 (* im im)) -2) im) (*.f64 (*.f64 (*.f64 im im) im) #s(literal -1/3 binary64)))
#s(approx (* (+ (* -1/3 (* im im)) -2) im) (*.f64 (*.f64 (*.f64 im im) (neg.f64 im)) (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im)) #s(literal 1/3 binary64))))
#s(approx (+ (* -1/3 (* im im)) -2) (*.f64 (*.f64 im im) #s(literal -1/3 binary64)))
#s(approx (+ (* -1/3 (* im im)) -2) (neg.f64 (*.f64 (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) (*.f64 im im))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (*.f64 (*.f64 (cos.f64 re) (*.f64 (*.f64 im im) im)) #s(literal -1/6 binary64)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (*.f64 (fma.f64 (cos.f64 re) #s(literal -1/6 binary64) (/.f64 (neg.f64 (cos.f64 re)) (*.f64 im im))) (*.f64 (*.f64 im im) im)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (fma.f64 (cos.f64 re) #s(literal -1/6 binary64) (/.f64 (neg.f64 (cos.f64 re)) (*.f64 im im))) (*.f64 im im)))
#s(approx (+ (* (* -1/6 im) im) -1) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))
#s(approx (+ (* (* -1/6 im) im) -1) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)) #s(literal 1/2 binary64)))
#s(approx (* (- (exp (- 0 im)) (exp im)) (+ (* (* re re) -1/4) 1/2)) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (- (exp (- 0 im)) (exp im)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (neg.f64 (*.f64 (fma.f64 (cos.f64 re) #s(literal 1/6 binary64) (/.f64 (cos.f64 re) (*.f64 im im))) (*.f64 (*.f64 im im) im))))

eval70.0ms (1.3%)

Memory
-21.4MiB live, 38.1MiB allocated; 8ms collecting garbage
Compiler

Compiled 2 996 to 1 223 computations (59.2% saved)

prune18.0ms (0.3%)

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

22 alts after pruning (18 fresh and 4 done)

PrunedKeptTotal
New24912261
Fresh268
Picked235
Done011
Total25322275
Accuracy
100.0%
Counts
275 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(*.f64 (*.f64 (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))))) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
99.9%
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
67.3%
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
5.3%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
42.0%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) (exp.f64 im)))
83.8%
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
55.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) (neg.f64 (cos.f64 re)))))) im))
59.6%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 (*.f64 #s(literal -1 binary64) (*.f64 im im)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)))) im))
53.2%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
54.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
53.3%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (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)))))))
53.5%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
35.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
11.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))))
28.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 #s(approx (+ (* -1/3 (* im im)) -2) (*.f64 (*.f64 im im) #s(literal -1/3 binary64))) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
28.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) #s(approx (* (+ (* -1/3 (* im im)) -2) im) (*.f64 (*.f64 (*.f64 im im) im) #s(literal -1/3 binary64)))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
54.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im))
11.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
39.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal -1/24 binary64) (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 im))))
19.6%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))))
35.0%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))))
30.6%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
Compiler

Compiled 944 to 869 computations (7.9% saved)

series56.0ms (1%)

Memory
0.8MiB live, 46.9MiB allocated; 4ms collecting garbage
Counts
46 → 118
Calls
Call 1
Inputs
(*.f64 (*.f64 (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))))) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (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))))) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
(fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 re)
re
(cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 re)
(sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(*.f64 #s(literal -2 binary64) (sinh.f64 im))
#s(literal -2 binary64)
(sinh.f64 im)
im
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im))
(*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im)
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))
(*.f64 im im)
#s(literal -1/6 binary64)
#s(literal -1 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) (exp.f64 im)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
(-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) (exp.f64 im))
#s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64)))
(+.f64 (neg.f64 im) #s(literal 1 binary64))
(neg.f64 im)
#s(literal 1 binary64)
(exp.f64 im)
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(-.f64 #s(literal 0 binary64) im)
#s(literal 0 binary64)
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
(+.f64 #s(literal 1 binary64) im)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(*.f64 #s(literal 1/4 binary64) (*.f64 re re))
#s(literal 1/4 binary64)
(*.f64 re re)
(*.f64 (sinh.f64 im) #s(literal 2 binary64))
Outputs
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* -1/2 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (* re (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))) (* -1/2 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* -1/2 (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* 1/4 (* re (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* -1/2 (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* 1/12 (* re (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))) (* 1/4 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* -1 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (* re (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))) (* -1 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* -1 (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* 1/2 (* re (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* -1 (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* 1/6 (* re (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))) (* 1/2 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))))))))))
#s(approx (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* re (cos (* 1/2 (PI)))))))
#s(approx (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* re (+ (cos (* 1/2 (PI))) (* -1/2 (* re (sin (* 1/2 (PI))))))))))
#s(approx (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* re (+ (cos (* 1/2 (PI))) (* re (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* re (cos (* 1/2 (PI))))))))))))
#s(approx (sin re) #s(hole binary64 re))
#s(approx (sin re) #s(hole binary64 (* re (+ 1 (* -1/6 (pow re 2))))))
#s(approx (sin re) #s(hole binary64 (* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))))
#s(approx (sin re) #s(hole binary64 (* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))))
#s(approx (* (cos re) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* -1/2 (* (pow re 2) (sin (* 1/2 (PI))))))))
#s(approx (* (cos re) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow re 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* 1/24 (* (pow re 2) (sin (* 1/2 (PI))))))))))
#s(approx (* (cos re) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow re 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (sin (* 1/2 (PI))))) (* 1/24 (sin (* 1/2 (PI)))))))))))
#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 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (- (exp (neg im)) (exp im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* im (- (* -1/6 (pow im 2)) 1))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* -1/2 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))) (* im (- (* -1/6 (pow im 2)) 1)))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* im (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/2 (* im (- (* -1/6 (pow im 2)) 1))) (* 1/24 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* im (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/2 (* im (- (* -1/6 (pow im 2)) 1))) (* (pow re 2) (+ (* -1/720 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))) (* 1/24 (* im (- (* -1/6 (pow im 2)) 1))))))))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (* -1/6 (pow im 2)) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/2 (* (pow re 2) (- (* -1/6 (pow im 2)) 1))) (* -1/6 (pow im 2))) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/6 (pow im 2)) (* (pow re 2) (+ (* -1/2 (- (* -1/6 (pow im 2)) 1)) (* 1/24 (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))))) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/6 (pow im 2)) (* (pow re 2) (+ (* -1/2 (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (* -1/6 (pow im 2)) 1))) (* 1/24 (- (* -1/6 (pow im 2)) 1))))))) 1)))
#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 (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* 1/4 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) #s(hole binary64 (* 1/4 (* (pow re 2) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* 1/4 (* re re)) #s(hole binary64 (* 1/4 (pow re 2))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* -1/2 (* (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* -1 (* (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) #s(hole binary64 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))
#s(approx (sin re) #s(hole binary64 (sin re)))
#s(approx (* (cos re) (sin (/ (PI) 2))) #s(hole binary64 (* (cos re) (sin (* 1/2 (PI))))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* im (* (cos re) (- (* -1/6 (pow im 2)) 1)))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* (cos re) (- (* -1/6 (pow im 2)) 1))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* (pow re 2) (+ (* -1/2 (/ (- (exp im) (/ 1 (exp im))) (pow re 2))) (* 1/4 (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* -1 (* im (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/6 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/6 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/120 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/6 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/120 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/5040 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* -2 (* im (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/3 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/3 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/60 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/3 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/60 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/2520 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* -2 im)))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* -1/3 (pow im 2)) 2))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))))
#s(approx (sinh im) #s(hole binary64 im))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* 1/6 (pow im 2))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* 1/120 (pow im 2))))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* (pow im 2) (+ 1/120 (* 1/5040 (pow im 2))))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* -1 (* im (cos re)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* -1 (cos re))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re))))))
#s(approx (+ (* (* im im) -1/6) -1) #s(hole binary64 -1))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (- 0 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 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 (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -2 (* im (+ 1/2 (* -1/4 (pow re 2)))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/3 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/60 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/60 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/2520 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) #s(hole binary64 (* 1/2 (* im (pow re 2)))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) #s(hole binary64 (* im (+ (* 1/12 (* (pow im 2) (pow re 2))) (* 1/2 (pow re 2))))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) #s(hole binary64 (* im (+ (* 1/2 (pow re 2)) (* (pow im 2) (+ (* 1/240 (* (pow im 2) (pow re 2))) (* 1/12 (pow re 2))))))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) #s(hole binary64 (* im (+ (* 1/2 (pow re 2)) (* (pow im 2) (+ (* 1/12 (pow re 2)) (* (pow im 2) (+ (* 1/10080 (* (pow im 2) (pow re 2))) (* 1/240 (pow re 2))))))))))
#s(approx (* (sinh im) 2) #s(hole binary64 (* 2 im)))
#s(approx (* (sinh im) 2) #s(hole binary64 (* im (+ 2 (* 1/3 (pow im 2))))))
#s(approx (* (sinh im) 2) #s(hole binary64 (* im (+ 2 (* (pow im 2) (+ 1/3 (* 1/60 (pow im 2))))))))
#s(approx (* (sinh im) 2) #s(hole binary64 (* im (+ 2 (* (pow im 2) (+ 1/3 (* (pow im 2) (+ 1/60 (* 1/2520 (pow im 2))))))))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* -1 (- (exp im) (/ 1 (exp im))))))
#s(approx (sinh im) #s(hole binary64 (* 1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* -1/6 (* (pow im 3) (cos re)))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* (pow im 3) (+ (* -1 (/ (cos re) (pow im 2))) (* -1/6 (cos re))))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* -1/6 (* (pow im 2) (cos re)))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* (pow im 2) (+ (* -1 (/ (cos re) (pow im 2))) (* -1/6 (cos re))))))
#s(approx (+ (* (* im im) -1/6) -1) #s(hole binary64 (* -1/6 (pow im 2))))
#s(approx (+ (* (* im im) -1/6) -1) #s(hole binary64 (* -1 (* (pow im 2) (+ 1/6 (/ 1 (pow im 2)))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (neg im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (neg im))))
#s(approx (+ (neg im) 1) #s(hole binary64 (* im (- (/ 1 im) 1))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (+ 1 im) #s(hole binary64 (* im (+ 1 (/ 1 im)))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -1 (* (+ 1/2 (* -1/4 (pow re 2))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (sinh im) 2) #s(hole binary64 (- (exp im) (/ 1 (exp im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* -1 (* (pow im 3) (+ (* 1/6 (cos re)) (/ (cos re) (pow im 2)))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (* -1 im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (* -1 im))))
#s(approx (+ (neg im) 1) #s(hole binary64 (* -1 (* im (- 1 (/ 1 im))))))
Calls

6 calls:

TimeVariablePointExpression
9.0ms
re
@0
((* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (sin re) re (cos (/ (PI) 2)) (/ (PI) 2) (PI) 2 (* (cos re) (sin (/ (PI) 2))) (cos re) (sin (/ (PI) 2)) (* -2 (sinh im)) -2 (sinh im) im 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (* (cos re) (+ (* (* -1/6 im) im) -1)) (+ (* (* im im) -1/6) -1) (* im im) -1/6 -1 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (+ (neg im) 1) (neg im) 1 (exp im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (- 0 im) 0 (exp im) (+ 1 im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (* (* 1/4 (* re re)) (* (sinh im) 2)) (* 1/4 (* re re)) 1/4 (* re re) (* (sinh im) 2))
6.0ms
im
@inf
((* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (sin re) re (cos (/ (PI) 2)) (/ (PI) 2) (PI) 2 (* (cos re) (sin (/ (PI) 2))) (cos re) (sin (/ (PI) 2)) (* -2 (sinh im)) -2 (sinh im) im 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (* (cos re) (+ (* (* -1/6 im) im) -1)) (+ (* (* im im) -1/6) -1) (* im im) -1/6 -1 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (+ (neg im) 1) (neg im) 1 (exp im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (- 0 im) 0 (exp im) (+ 1 im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (* (* 1/4 (* re re)) (* (sinh im) 2)) (* 1/4 (* re re)) 1/4 (* re re) (* (sinh im) 2))
6.0ms
im
@-inf
((* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (sin re) re (cos (/ (PI) 2)) (/ (PI) 2) (PI) 2 (* (cos re) (sin (/ (PI) 2))) (cos re) (sin (/ (PI) 2)) (* -2 (sinh im)) -2 (sinh im) im 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (* (cos re) (+ (* (* -1/6 im) im) -1)) (+ (* (* im im) -1/6) -1) (* im im) -1/6 -1 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (+ (neg im) 1) (neg im) 1 (exp im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (- 0 im) 0 (exp im) (+ 1 im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (* (* 1/4 (* re re)) (* (sinh im) 2)) (* 1/4 (* re re)) 1/4 (* re re) (* (sinh im) 2))
6.0ms
re
@inf
((* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (sin re) re (cos (/ (PI) 2)) (/ (PI) 2) (PI) 2 (* (cos re) (sin (/ (PI) 2))) (cos re) (sin (/ (PI) 2)) (* -2 (sinh im)) -2 (sinh im) im 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (* (cos re) (+ (* (* -1/6 im) im) -1)) (+ (* (* im im) -1/6) -1) (* im im) -1/6 -1 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (+ (neg im) 1) (neg im) 1 (exp im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (- 0 im) 0 (exp im) (+ 1 im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (* (* 1/4 (* re re)) (* (sinh im) 2)) (* 1/4 (* re re)) 1/4 (* re re) (* (sinh im) 2))
6.0ms
re
@-inf
((* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (sin re) re (cos (/ (PI) 2)) (/ (PI) 2) (PI) 2 (* (cos re) (sin (/ (PI) 2))) (cos re) (sin (/ (PI) 2)) (* -2 (sinh im)) -2 (sinh im) im 1/2 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (* (cos re) (+ (* (* -1/6 im) im) -1)) (+ (* (* im im) -1/6) -1) (* im im) -1/6 -1 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (+ (neg im) 1) (neg im) 1 (exp im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (- (exp (- 0 im)) (exp im)) (exp (- 0 im)) (- 0 im) 0 (exp im) (+ 1 im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (* (* 1/4 (* re re)) (* (sinh im) 2)) (* 1/4 (* re re)) 1/4 (* re re) (* (sinh im) 2))

rewrite329.0ms (5.9%)

Memory
-24.2MiB live, 208.9MiB allocated; 66ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06073805
06502733
144962727
0105802584
1274382584
Stop Event
iter-limit
node-limit
iter-limit
Counts
164 → 380
Calls
Call 1
Inputs
(*.f64 (*.f64 (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))))) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (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))))) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
(fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 re)
re
(cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 re)
(sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(*.f64 #s(literal -2 binary64) (sinh.f64 im))
#s(literal -2 binary64)
(sinh.f64 im)
im
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im))
(*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im)
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))
(*.f64 im im)
#s(literal -1/6 binary64)
#s(literal -1 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) (exp.f64 im)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
(-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) (exp.f64 im))
#s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64)))
(+.f64 (neg.f64 im) #s(literal 1 binary64))
(neg.f64 im)
#s(literal 1 binary64)
(exp.f64 im)
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(-.f64 #s(literal 0 binary64) im)
#s(literal 0 binary64)
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
(+.f64 #s(literal 1 binary64) im)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(*.f64 #s(literal 1/4 binary64) (*.f64 re re))
#s(literal 1/4 binary64)
(*.f64 re re)
(*.f64 (sinh.f64 im) #s(literal 2 binary64))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* -1/2 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (* re (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))) (* -1/2 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* -1/2 (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* 1/4 (* re (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (+ (* -1/2 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* -1/2 (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* 1/12 (* re (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))) (* 1/4 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* -1 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (* re (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))) (* -1 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* -1 (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* 1/2 (* re (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (+ (* -1 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* -1 (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))) (* re (+ (* 1/6 (* re (* (cos (* 1/2 (PI))) (- (exp im) (/ 1 (exp im)))))) (* 1/2 (* (sin (* 1/2 (PI))) (- (exp im) (/ 1 (exp im))))))))))))
#s(approx (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* re (cos (* 1/2 (PI)))))))
#s(approx (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* re (+ (cos (* 1/2 (PI))) (* -1/2 (* re (sin (* 1/2 (PI))))))))))
#s(approx (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* re (+ (cos (* 1/2 (PI))) (* re (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* re (cos (* 1/2 (PI))))))))))))
#s(approx (sin re) #s(hole binary64 re))
#s(approx (sin re) #s(hole binary64 (* re (+ 1 (* -1/6 (pow re 2))))))
#s(approx (sin re) #s(hole binary64 (* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))))
#s(approx (sin re) #s(hole binary64 (* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))))
#s(approx (* (cos re) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* -1/2 (* (pow re 2) (sin (* 1/2 (PI))))))))
#s(approx (* (cos re) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow re 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* 1/24 (* (pow re 2) (sin (* 1/2 (PI))))))))))
#s(approx (* (cos re) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow re 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (sin (* 1/2 (PI))))) (* 1/24 (sin (* 1/2 (PI)))))))))))
#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 (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (- (exp (neg im)) (exp im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* im (- (* -1/6 (pow im 2)) 1))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* -1/2 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))) (* im (- (* -1/6 (pow im 2)) 1)))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* im (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/2 (* im (- (* -1/6 (pow im 2)) 1))) (* 1/24 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (+ (* im (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/2 (* im (- (* -1/6 (pow im 2)) 1))) (* (pow re 2) (+ (* -1/720 (* im (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))) (* 1/24 (* im (- (* -1/6 (pow im 2)) 1))))))))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (* -1/6 (pow im 2)) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/2 (* (pow re 2) (- (* -1/6 (pow im 2)) 1))) (* -1/6 (pow im 2))) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/6 (pow im 2)) (* (pow re 2) (+ (* -1/2 (- (* -1/6 (pow im 2)) 1)) (* 1/24 (* (pow re 2) (- (* -1/6 (pow im 2)) 1)))))) 1)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (- (+ (* -1/6 (pow im 2)) (* (pow re 2) (+ (* -1/2 (- (* -1/6 (pow im 2)) 1)) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (* -1/6 (pow im 2)) 1))) (* 1/24 (- (* -1/6 (pow im 2)) 1))))))) 1)))
#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 (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* 1/4 (* (pow re 2) (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) #s(hole binary64 (* 1/4 (* (pow re 2) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* 1/4 (* re re)) #s(hole binary64 (* 1/4 (pow re 2))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* -1/2 (* (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* -1 (* (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) #s(hole binary64 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))
#s(approx (sin re) #s(hole binary64 (sin re)))
#s(approx (* (cos re) (sin (/ (PI) 2))) #s(hole binary64 (* (cos re) (sin (* 1/2 (PI))))))
#s(approx (cos re) #s(hole binary64 (cos re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* im (* (cos re) (- (* -1/6 (pow im 2)) 1)))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* (cos re) (- (* -1/6 (pow im 2)) 1))))
#s(approx (* 1/2 (cos re)) #s(hole binary64 (* 1/2 (cos re))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* (pow re 2) (+ (* -1/2 (/ (- (exp im) (/ 1 (exp im))) (pow re 2))) (* 1/4 (- (exp im) (/ 1 (exp im))))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* -1 (* im (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/6 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/6 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/120 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))))
#s(approx (* (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) 1/2) #s(hole binary64 (* im (+ (* -1 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/6 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/120 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/5040 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* -2 (* im (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/3 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/3 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/60 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) #s(hole binary64 (* im (+ (* -2 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/3 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* (pow im 2) (+ (* -1/60 (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))) (* -1/2520 (* (pow im 2) (+ (* (cos re) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin re)))))))))))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* -2 im)))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* -1/3 (pow im 2)) 2))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))))
#s(approx (sinh im) #s(hole binary64 im))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* 1/6 (pow im 2))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* 1/120 (pow im 2))))))))
#s(approx (sinh im) #s(hole binary64 (* im (+ 1 (* (pow im 2) (+ 1/6 (* (pow im 2) (+ 1/120 (* 1/5040 (pow im 2))))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* -1 (* im (cos re)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* -1 (cos re))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re))))))
#s(approx (+ (* (* im im) -1/6) -1) #s(hole binary64 -1))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* -1 im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (+ 1 (* im (- (* 1/2 im) 1)))))
#s(approx (exp (- 0 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 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 (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -2 (* im (+ 1/2 (* -1/4 (pow re 2)))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/3 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/60 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* im (+ (* -2 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/3 (+ 1/2 (* -1/4 (pow re 2)))) (* (pow im 2) (+ (* -1/60 (+ 1/2 (* -1/4 (pow re 2)))) (* -1/2520 (* (pow im 2) (+ 1/2 (* -1/4 (pow re 2)))))))))))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) #s(hole binary64 (* 1/2 (* im (pow re 2)))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) #s(hole binary64 (* im (+ (* 1/12 (* (pow im 2) (pow re 2))) (* 1/2 (pow re 2))))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) #s(hole binary64 (* im (+ (* 1/2 (pow re 2)) (* (pow im 2) (+ (* 1/240 (* (pow im 2) (pow re 2))) (* 1/12 (pow re 2))))))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) #s(hole binary64 (* im (+ (* 1/2 (pow re 2)) (* (pow im 2) (+ (* 1/12 (pow re 2)) (* (pow im 2) (+ (* 1/10080 (* (pow im 2) (pow re 2))) (* 1/240 (pow re 2))))))))))
#s(approx (* (sinh im) 2) #s(hole binary64 (* 2 im)))
#s(approx (* (sinh im) 2) #s(hole binary64 (* im (+ 2 (* 1/3 (pow im 2))))))
#s(approx (* (sinh im) 2) #s(hole binary64 (* im (+ 2 (* (pow im 2) (+ 1/3 (* 1/60 (pow im 2))))))))
#s(approx (* (sinh im) 2) #s(hole binary64 (* im (+ 2 (* (pow im 2) (+ 1/3 (* (pow im 2) (+ 1/60 (* 1/2520 (pow im 2))))))))))
#s(approx (* -2 (sinh im)) #s(hole binary64 (* -1 (- (exp im) (/ 1 (exp im))))))
#s(approx (sinh im) #s(hole binary64 (* 1/2 (- (exp im) (/ 1 (exp im))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* -1/6 (* (pow im 3) (cos re)))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* (pow im 3) (+ (* -1 (/ (cos re) (pow im 2))) (* -1/6 (cos re))))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* -1/6 (* (pow im 2) (cos re)))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(hole binary64 (* (pow im 2) (+ (* -1 (/ (cos re) (pow im 2))) (* -1/6 (cos re))))))
#s(approx (+ (* (* im im) -1/6) -1) #s(hole binary64 (* -1/6 (pow im 2))))
#s(approx (+ (* (* im im) -1/6) -1) #s(hole binary64 (* -1 (* (pow im 2) (+ 1/6 (/ 1 (pow im 2)))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (neg im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (neg im))))
#s(approx (+ (neg im) 1) #s(hole binary64 (* im (- (/ 1 im) 1))))
#s(approx (exp im) #s(hole binary64 (exp im)))
#s(approx (+ 1 im) #s(hole binary64 (* im (+ 1 (/ 1 im)))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(hole binary64 (* -1 (* (+ 1/2 (* -1/4 (pow re 2))) (- (exp im) (/ 1 (exp im)))))))
#s(approx (* (sinh im) 2) #s(hole binary64 (- (exp im) (/ 1 (exp im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(hole binary64 (* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) #s(hole binary64 (* -1 (* (pow im 3) (+ (* 1/6 (cos re)) (/ (cos re) (pow im 2)))))))
#s(approx (- (exp (- 0 im)) (exp im)) #s(hole binary64 (- (exp (* -1 im)) (exp im))))
#s(approx (exp (- 0 im)) #s(hole binary64 (exp (* -1 im))))
#s(approx (+ (neg im) 1) #s(hole binary64 (* -1 (* im (- 1 (/ 1 im))))))
Outputs
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal -2 binary64)) (sinh.f64 im)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 im) #s(literal -2 binary64)))
(*.f64 (cos.f64 re) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 re) #s(literal -2 binary64)) (sinh.f64 im)))
(*.f64 (*.f64 (cos.f64 re) #s(literal -2 binary64)) (sinh.f64 im))
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 (sinh.f64 im) #s(literal -2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)) (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)) (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (neg.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (neg.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (neg.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 (sin.f64 re) #s(literal 0 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64))) (sin.f64 (-.f64 re (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64))) (cos.f64 re))
(/.f64 (fma.f64 (pow.f64 (sin.f64 re) #s(literal 3 binary64)) #s(literal 0 binary64) (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 re))))))
(/.f64 (fma.f64 (pow.f64 (cos.f64 re) #s(literal 3 binary64)) #s(literal 1 binary64) (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 (sin.f64 re) #s(literal 0 binary64))))))
(sin.f64 (+.f64 (neg.f64 re) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 re) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) re))
(sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) re))
(sin.f64 (+.f64 re (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 0 binary64) (sin.f64 re) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(fma.f64 (sin.f64 re) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(fma.f64 #s(literal 1 binary64) (cos.f64 re) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
(fma.f64 (cos.f64 re) #s(literal 1 binary64) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
(-.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)))
(-.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (neg.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (neg.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 (fabs.f64 re)))
(cos.f64 (fabs.f64 (fabs.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 (fabs.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
(sin.f64 re)
re
#s(literal 0 binary64)
(*.f64 (PI.f64) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (PI.f64))
(/.f64 (neg.f64 (neg.f64 (PI.f64))) #s(literal 2 binary64))
(/.f64 (neg.f64 (PI.f64)) #s(literal -2 binary64))
(/.f64 (PI.f64) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (PI.f64)))
(log.f64 (pow.f64 (exp.f64 (PI.f64)) #s(literal 1/2 binary64)))
(PI.f64)
#s(literal 2 binary64)
(*.f64 #s(literal 1 binary64) (cos.f64 re))
(*.f64 (cos.f64 re) #s(literal 1 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (+.f64 re (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 re (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 re (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (neg.f64 (cos.f64 re))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (neg.f64 re))) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 re)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (fabs.f64 re))) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (fabs.f64 re)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 re) (cos.f64 re)) #s(literal 2 binary64))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)) (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)) (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (neg.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (neg.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (neg.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 (sin.f64 re) #s(literal 0 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64))) (sin.f64 (-.f64 re (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64))) (cos.f64 re))
(/.f64 (fma.f64 (pow.f64 (sin.f64 re) #s(literal 3 binary64)) #s(literal 0 binary64) (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 re))))))
(/.f64 (fma.f64 (pow.f64 (cos.f64 re) #s(literal 3 binary64)) #s(literal 1 binary64) (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 (sin.f64 re) #s(literal 0 binary64))))))
(sin.f64 (+.f64 (neg.f64 re) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 re) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) re))
(sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) re))
(sin.f64 (+.f64 re (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 0 binary64) (sin.f64 re) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(fma.f64 (sin.f64 re) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(fma.f64 #s(literal 1 binary64) (cos.f64 re) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
(fma.f64 (cos.f64 re) #s(literal 1 binary64) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
(-.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)))
(-.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (neg.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (neg.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 (fabs.f64 re)))
(cos.f64 (fabs.f64 (fabs.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 (fabs.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
#s(literal 1 binary64)
(*.f64 (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1 binary64))
(*.f64 (sinh.f64 im) #s(literal -2 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(*.f64 #s(literal -2 binary64) (sinh.f64 im))
(*.f64 #s(literal 2 binary64) (sinh.f64 (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 (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)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(neg.f64 (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1 binary64)))
(neg.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im)))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+.f64 (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im)))
#s(literal -2 binary64)
(/.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(literal -2 binary64))
(/.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))
(sinh.f64 im)
(-.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (sinh.f64 im) #s(literal 2 binary64)) (/.f64 (sinh.f64 im) #s(literal 2 binary64)))
(+.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (neg.f64 (exp.f64 (neg.f64 im))) #s(literal 2 binary64)))
im
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im))
(*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im)
(*.f64 im #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal -1 binary64) (*.f64 im im)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)))
(*.f64 (fma.f64 (*.f64 im im) #s(literal 1/6 binary64) #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 im im) #s(literal 1/6 binary64) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(/.f64 (fma.f64 (*.f64 #s(literal -1/216 binary64) (*.f64 (*.f64 im im) im)) (*.f64 (*.f64 im im) im) #s(literal -1 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal -1 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/216 binary64) (*.f64 (*.f64 im im) im)) (*.f64 (*.f64 im im) im)) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)))))
(neg.f64 (fma.f64 (*.f64 im im) #s(literal 1/6 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal -1 binary64))
(fma.f64 im (*.f64 #s(literal -1/6 binary64) im) #s(literal -1 binary64))
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(+.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))
(*.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 im)))
(*.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)))
(*.f64 (-.f64 im #s(literal 0 binary64)) (-.f64 im #s(literal 0 binary64)))
(*.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)))
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 im im)
(pow.f64 (fabs.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (-.f64 im #s(literal 0 binary64)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 im) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 im #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 im im) (*.f64 im im)))
(fabs.f64 (neg.f64 (*.f64 im im)))
(fabs.f64 (*.f64 im im))
#s(literal -1/6 binary64)
#s(literal -1 binary64)
(*.f64 (-.f64 #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64))) (exp.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64))) (exp.f64 im)))
#s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64))
(/.f64 (-.f64 (*.f64 #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64))) #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64)))) (exp.f64 (+.f64 im im))) (+.f64 #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64))) (exp.f64 im)))
(/.f64 (-.f64 (*.f64 (*.f64 #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64))) #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64)))) #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64)))) (exp.f64 (*.f64 im #s(literal 3 binary64)))) (fma.f64 #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64))) #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64))) (+.f64 (exp.f64 (+.f64 im im)) (*.f64 #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64))) (exp.f64 im)))))
(neg.f64 (-.f64 (exp.f64 im) #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64)))))
(-.f64 #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64))) (exp.f64 im))
(+.f64 #s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64))) (neg.f64 (exp.f64 im)))
#s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 im im) (neg.f64 im)) #s(literal -1 binary64)) (fma.f64 im im (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 im) #s(literal -1 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(literal 1 binary64) im) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 1 binary64) im) (*.f64 #s(literal 1 binary64) im) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) im)))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (neg.f64 im)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 im im (*.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 im))))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 im im)) (+.f64 #s(literal 1 binary64) im))
(/.f64 (-.f64 (*.f64 im im) #s(literal 1 binary64)) (-.f64 (neg.f64 im) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (neg.f64 im))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 im im) (*.f64 #s(literal 1 binary64) (neg.f64 im)))))
(/.f64 (fma.f64 (*.f64 im im) (neg.f64 im) #s(literal 1 binary64)) (fma.f64 im im (-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 im) #s(literal 1 binary64)))))
(fma.f64 #s(literal -1 binary64) im #s(literal 1 binary64))
(fma.f64 im #s(literal -1 binary64) #s(literal 1 binary64))
(-.f64 (neg.f64 im) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) im))
(-.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 im)))
(+.f64 (neg.f64 im) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (neg.f64 im))
(*.f64 #s(literal -1 binary64) im)
(*.f64 im #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))
(neg.f64 (-.f64 im #s(literal 0 binary64)))
(neg.f64 im)
(-.f64 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))
#s(literal 1 binary64)
(sqrt.f64 (exp.f64 (+.f64 im im)))
(fabs.f64 (neg.f64 (exp.f64 im)))
(fabs.f64 (exp.f64 im))
(exp.f64 im)
(+.f64 (cosh.f64 im) (sinh.f64 im))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (*.f64 #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)))) (+.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (*.f64 (*.f64 #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)))) (+.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (fma.f64 #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)) (*.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))))
(neg.f64 (-.f64 #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)) (exp.f64 (neg.f64 im))))
(fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)) (neg.f64 #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)))
(+.f64 (exp.f64 (neg.f64 im)) (neg.f64 #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) im)
(pow.f64 (exp.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 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 im))))
(/.f64 #s(literal 1 binary64) (exp.f64 (-.f64 im #s(literal 0 binary64))))
(/.f64 #s(literal 1 binary64) (/.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)))
(sqrt.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))
(-.f64 (cosh.f64 im) (sinh.f64 (-.f64 im #s(literal 0 binary64))))
(-.f64 (cosh.f64 im) (sinh.f64 im))
(fabs.f64 (-.f64 (sinh.f64 im) (cosh.f64 im)))
(fabs.f64 (neg.f64 (exp.f64 (neg.f64 im))))
(fabs.f64 (exp.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(*.f64 #s(literal -1 binary64) im)
(*.f64 im #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))
(neg.f64 (-.f64 im #s(literal 0 binary64)))
(neg.f64 im)
(-.f64 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))
#s(literal 0 binary64)
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (neg.f64 im))) (+.f64 #s(literal 1 binary64) (fma.f64 im im (*.f64 #s(literal 1 binary64) (neg.f64 im)))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 im im)) (-.f64 #s(literal 1 binary64) im))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 im im) (*.f64 #s(literal 1 binary64) im))))
(-.f64 #s(literal 1 binary64) (neg.f64 im))
(+.f64 #s(literal 1 binary64) im)
(+.f64 im #s(literal 1 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
(*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (sinh.f64 im)) #s(literal 2 binary64))
(*.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(*.f64 (*.f64 (*.f64 re re) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (*.f64 re re) #s(literal 1/4 binary64)))
(*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/4 binary64) re) re)
(*.f64 (*.f64 re re) #s(literal 1/4 binary64))
(*.f64 #s(literal 1/4 binary64) (*.f64 re re))
#s(literal 1/4 binary64)
(*.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)))
(*.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)))
(*.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 re)))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 re re)
(pow.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 (fabs.f64 re) #s(literal 2 binary64))
(pow.f64 re #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 re re) (*.f64 re re)))
(fabs.f64 (neg.f64 (*.f64 re re)))
(fabs.f64 (*.f64 re re))
(*.f64 (sinh.f64 im) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (/.f64 (+.f64 im im) #s(literal 2 binary64))) (cosh.f64 (/.f64 (-.f64 im im) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (sinh.f64 im))
(/.f64 (fma.f64 (sinh.f64 im) #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal 2 binary64))
(/.f64 (fma.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) #s(literal 4 binary64))
(/.f64 (-.f64 (exp.f64 (+.f64 im im)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 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))) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(neg.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)))
(-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (sinh.f64 im) (sinh.f64 im))
(+.f64 (exp.f64 im) (neg.f64 (exp.f64 (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) re) #s(literal -1/2 binary64) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (fma.f64 #s(literal 0 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1 binary64)) re) #s(literal 1/4 binary64))) re (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) re) #s(literal 1/12 binary64) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1/4 binary64))) re (*.f64 #s(literal 0 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) re (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (*.f64 (sinh.f64 im) #s(literal -2 binary64)))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (fma.f64 (sinh.f64 im) #s(literal -2 binary64) (neg.f64 (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) re))))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (fma.f64 (sinh.f64 im) #s(literal -2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1 binary64)) re) #s(literal 1/2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) re)))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (fma.f64 re (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) re) #s(literal 1/6 binary64) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1/2 binary64))) re (*.f64 #s(literal 0 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) (*.f64 (sinh.f64 im) #s(literal -2 binary64))))
#s(approx (cos re) #s(literal 1 binary64))
#s(approx (cos re) (fma.f64 #s(literal 0 binary64) re #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (fma.f64 (*.f64 #s(literal 1 binary64) re) #s(literal -1/2 binary64) #s(literal 0 binary64)) re #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 0 binary64) re) #s(literal -1/6 binary64) #s(literal -1/2 binary64)) re #s(literal 0 binary64)) re #s(literal 1 binary64)))
#s(approx (sin re) re)
#s(approx (sin re) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/6 binary64) #s(literal 1 binary64)) re))
#s(approx (sin re) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64)) (*.f64 re re) #s(literal 1 binary64)) re))
#s(approx (sin re) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 re re) #s(literal 1/120 binary64)) (*.f64 re re) #s(literal -1/6 binary64)) (*.f64 re re) #s(literal 1 binary64)) re))
#s(approx (* (cos re) (sin (/ (PI) 2))) (fma.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (* (cos re) (sin (/ (PI) 2))) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (* (cos re) (sin (/ (PI) 2))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 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 (fma.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 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 im) #s(literal -2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal -2 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 1/48 binary64) (*.f64 (sinh.f64 im) #s(literal -2 binary64)))) (*.f64 re re) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(literal 1/2 binary64))))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (fma.f64 (*.f64 (*.f64 (*.f64 re re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) #s(literal 1/24 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im) #s(literal -1/2 binary64))) (*.f64 re re) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) #s(literal -1/720 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im) #s(literal 1/24 binary64))) (*.f64 re re))) (*.f64 re re))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (*.f64 re re)) #s(literal -1/2 binary64) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (-.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (*.f64 re re)) #s(literal 1/24 binary64) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) #s(literal -1/2 binary64))) (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 1 binary64)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (-.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (*.f64 re re)) #s(literal -1/720 binary64) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) #s(literal 1/24 binary64))) (*.f64 re re) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) #s(literal -1/2 binary64))) (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 1 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 (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 (fma.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 (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64)))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64))))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
#s(approx (* 1/4 (* re re)) (*.f64 (*.f64 re re) #s(literal 1/4 binary64)))
#s(approx (* re re) (*.f64 re re))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal -1/2 binary64)))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (neg.f64 (*.f64 (cos.f64 re) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
#s(approx (cos re) (cos.f64 re))
#s(approx (sin re) (sin.f64 re))
#s(approx (* (cos re) (sin (/ (PI) 2))) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
#s(approx (cos re) (cos.f64 re))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal -2 binary64)) (sinh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (cos.f64 re)))
#s(approx (* 1/2 (cos re)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (/.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1/2 binary64) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (*.f64 re re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/6 binary64) (cos.f64 re))) (*.f64 im im) (neg.f64 (cos.f64 re))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/120 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 #s(literal -1/6 binary64) (cos.f64 re))) (*.f64 im im) (neg.f64 (cos.f64 re))) im))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (*.f64 (*.f64 (cos.f64 re) im) #s(literal -2 binary64)))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (*.f64 (fma.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 (cos.f64 re) #s(literal -2 binary64))) im))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/3 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal -2 binary64))) im))
#s(approx (* (+ (* (sin re) (cos (/ (PI) 2))) (* (cos re) (sin (/ (PI) 2)))) (* -2 (sinh im))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/60 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 #s(literal -1/3 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 (cos.f64 re) #s(literal -2 binary64))) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 im #s(literal -2 binary64)))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 im im) #s(literal -2 binary64)) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/2520 binary64) (*.f64 im im) #s(literal -1/60 binary64)) (*.f64 im im) #s(literal -1/3 binary64)) (*.f64 im im) #s(literal -2 binary64)) im))
#s(approx (sinh im) im)
#s(approx (sinh im) (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/6 binary64) #s(literal 1 binary64)) im))
#s(approx (sinh im) (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/120 binary64) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)) im))
#s(approx (sinh im) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/6 binary64) (cos.f64 re))) (*.f64 im im) (neg.f64 (cos.f64 re))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) (cos.f64 re) (*.f64 #s(literal -1/120 binary64) (cos.f64 re))) (*.f64 im im) (*.f64 #s(literal -1/6 binary64) (cos.f64 re))) (*.f64 im im) (neg.f64 (cos.f64 re))) im))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (neg.f64 (cos.f64 re)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) (cos.f64 re)))
#s(approx (+ (* (* im im) -1/6) -1) #s(literal -1 binary64))
#s(approx (* im im) (*.f64 im im))
#s(approx (exp (- 0 im)) (-.f64 (neg.f64 im) #s(literal -1 binary64)))
#s(approx (exp (- 0 im)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal -1 binary64)) im #s(literal 1 binary64)))
#s(approx (exp (- 0 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 (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 (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) im) #s(literal -2 binary64)))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 im im)) #s(literal -1/3 binary64) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) #s(literal -2 binary64))) im))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 im im)) #s(literal -1/60 binary64) (*.f64 #s(literal -1/3 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) (*.f64 im im) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) #s(literal -2 binary64))) im))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 im im)) #s(literal -1/2520 binary64) (*.f64 #s(literal -1/60 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) (*.f64 im im) (*.f64 #s(literal -1/3 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))) (*.f64 im im) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) #s(literal -2 binary64))) im))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (*.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (fma.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 im im)) (*.f64 re re) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) im))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 im im)) (*.f64 re re) (*.f64 (*.f64 re re) #s(literal 1/12 binary64))) (*.f64 im im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) im))
#s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/10080 binary64) (*.f64 im im)) (*.f64 re re) (*.f64 #s(literal 1/240 binary64) (*.f64 re re))) (*.f64 im im) (*.f64 (*.f64 re re) #s(literal 1/12 binary64))) (*.f64 im im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) im))
#s(approx (* (sinh im) 2) (+.f64 im im))
#s(approx (* (sinh im) 2) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))
#s(approx (* (sinh im) 2) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))
#s(approx (* (sinh im) 2) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (sinh.f64 im) #s(literal -2 binary64)))
#s(approx (sinh im) (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (*.f64 (*.f64 (cos.f64 re) (*.f64 (*.f64 im im) im)) #s(literal -1/6 binary64)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (*.f64 (fma.f64 (cos.f64 re) #s(literal -1/6 binary64) (/.f64 (neg.f64 (cos.f64 re)) (*.f64 im im))) (*.f64 (*.f64 im im) im)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)))
#s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (fma.f64 (cos.f64 re) #s(literal -1/6 binary64) (/.f64 (neg.f64 (cos.f64 re)) (*.f64 im im))) (*.f64 im im)))
#s(approx (+ (* (* im im) -1/6) -1) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))
#s(approx (+ (* (* im im) -1/6) -1) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (sinh.f64 im) #s(literal -2 binary64)))
#s(approx (exp (- 0 im)) (exp.f64 (neg.f64 im)))
#s(approx (+ (neg im) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 1 binary64)) im))
#s(approx (exp im) (exp.f64 im))
#s(approx (+ 1 im) (fma.f64 #s(literal 1 binary64) im #s(literal 1 binary64)))
#s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 im) #s(literal -2 binary64))))
#s(approx (* (sinh im) 2) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal -2 binary64)) (sinh.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* (cos re) (+ (* (* -1/6 im) im) -1)) im) (neg.f64 (*.f64 (fma.f64 (cos.f64 re) #s(literal 1/6 binary64) (/.f64 (cos.f64 re) (*.f64 im im))) (*.f64 (*.f64 im im) im))))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (sinh.f64 im) #s(literal -2 binary64)))
#s(approx (exp (- 0 im)) (exp.f64 (neg.f64 im)))
#s(approx (+ (neg im) 1) (*.f64 (neg.f64 im) (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) im))))

eval54.0ms (1%)

Memory
8.1MiB live, 53.1MiB allocated; 5ms collecting garbage
Compiler

Compiled 3 269 to 1 557 computations (52.4% saved)

prune22.0ms (0.4%)

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

26 alts after pruning (20 fresh and 6 done)

PrunedKeptTotal
New3029311
Fresh21113
Picked325
Done044
Total30726333
Accuracy
100.0%
Counts
333 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
5.3%
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
99.7%
(*.f64 (*.f64 (fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1 binary64))) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
99.9%
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
67.3%
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
21.4%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 im im)) (-.f64 #s(literal 1 binary64) im)))))
21.7%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) #s(approx (exp im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64)))))
41.9%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) #s(approx (+ (neg im) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 1 binary64)) im))) (exp.f64 im)))
83.8%
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
55.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) (neg.f64 (cos.f64 re)))))) im))
59.6%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 (*.f64 #s(literal -1 binary64) (*.f64 im im)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)))) im))
53.2%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
53.5%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
35.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
11.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))))
28.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 #s(approx (+ (* -1/3 (* im im)) -2) (*.f64 (*.f64 im im) #s(literal -1/3 binary64))) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
28.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) #s(approx (* (+ (* -1/3 (* im im)) -2) im) (*.f64 (*.f64 (*.f64 im im) im) #s(literal -1/3 binary64)))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
54.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im))
54.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
40.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (*.f64 #s(literal -1 binary64) (*.f64 im im)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)))) im))
29.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(approx (+ (* (* im im) -1/6) -1) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))) im))
11.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
9.9%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (*.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))))
39.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal -1/24 binary64) (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 im))))
19.6%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))))
35.0%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))))
30.6%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
Compiler

Compiled 1 031 to 821 computations (20.4% saved)

regimes90.0ms (1.6%)

Memory
1.7MiB live, 100.9MiB allocated; 18ms collecting garbage
Counts
41 → 1
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (*.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(approx (+ (* (* im im) -1/6) -1) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) 1/2) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.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 (- 0 im)) (exp im))) (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) #s(approx (exp im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) (exp.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) #s(approx (* (+ (* -1/3 (* im im)) -2) im) (*.f64 (*.f64 (*.f64 im im) im) #s(literal -1/3 binary64)))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 #s(approx (+ (* -1/3 (* im im)) -2) (*.f64 (*.f64 im im) #s(literal -1/3 binary64))) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (*.f64 #s(literal -1 binary64) (*.f64 im im)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)))) im))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal -1/24 binary64) (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) #s(approx (+ (neg im) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 1 binary64)) im))) (exp.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 im im)) (-.f64 #s(literal 1 binary64) im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (-.f64 (*.f64 (*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))) re) re) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal 1/2 binary64))))
(*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re)) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (*.f64 (*.f64 #s(literal -1 binary64) (*.f64 im im)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)))) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 (*.f64 (fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1 binary64))) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (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)))))))
(*.f64 (*.f64 (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))))) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (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)))))) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (neg.f64 (cos.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 im im) (cos.f64 re)) #s(literal -1/6 binary64)) (neg.f64 (cos.f64 re)))))) im))
Outputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
Calls

6 calls:

41.0ms
im
12.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
10.0ms
re
10.0ms
(cos.f64 re)
8.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
99.9%1(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
99.9%1(cos.f64 re)
99.9%1(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
99.9%1(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
99.9%1re
99.9%1im
Compiler

Compiled 25 to 30 computations (-20% saved)

regimes56.0ms (1%)

Memory
-19.3MiB live, 119.5MiB allocated; 16ms collecting garbage
Counts
31 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (*.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(approx (+ (* (* im im) -1/6) -1) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) 1/2) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.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 (- 0 im)) (exp im))) (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) #s(approx (exp im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) (exp.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) #s(approx (* (+ (* -1/3 (* im im)) -2) im) (*.f64 (*.f64 (*.f64 im im) im) #s(literal -1/3 binary64)))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 #s(approx (+ (* -1/3 (* im im)) -2) (*.f64 (*.f64 im im) #s(literal -1/3 binary64))) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (*.f64 #s(literal -1 binary64) (*.f64 im im)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)))) im))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal -1/24 binary64) (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) #s(approx (+ (neg im) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 1 binary64)) im))) (exp.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 im im)) (-.f64 #s(literal 1 binary64) im)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
Outputs
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* (* (cos re) (* -2 (sinh im))) 1/2) (*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
Calls

6 calls:

12.0ms
im
11.0ms
(cos.f64 re)
11.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
8.0ms
re
6.0ms
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
Results
AccuracySegmentsBranch
89.9%2(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
92.2%2(cos.f64 re)
92.2%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 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
92.6%2re
96.1%3im
Compiler

Compiled 25 to 30 computations (-20% saved)

regimes7.0ms (0.1%)

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

1 calls:

6.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
99.4%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 11 to 11 computations (0% saved)

regimes50.0ms (0.9%)

Memory
-8.1MiB live, 131.2MiB allocated; 9ms collecting garbage
Counts
28 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (*.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(approx (+ (* (* im im) -1/6) -1) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) 1/2) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.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 (- 0 im)) (exp im))) (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) #s(approx (exp im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) (exp.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) #s(approx (* (+ (* -1/3 (* im im)) -2) im) (*.f64 (*.f64 (*.f64 im im) im) #s(literal -1/3 binary64)))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 #s(approx (+ (* -1/3 (* im im)) -2) (*.f64 (*.f64 im im) #s(literal -1/3 binary64))) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (*.f64 (*.f64 #s(literal -1 binary64) (*.f64 im im)) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)))) im))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal -2 binary64)) im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) im)) (+.f64 #s(literal 0 binary64) (fma.f64 im im (*.f64 #s(literal 0 binary64) im))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (*.f64 re re) im) #s(literal -1/24 binary64) (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) #s(approx (+ (neg im) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 1 binary64)) im))) (exp.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) #s(approx (exp im) (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 im im)) (-.f64 #s(literal 1 binary64) im)))))
Outputs
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))))
Calls

6 calls:

10.0ms
re
10.0ms
(cos.f64 re)
9.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
7.0ms
im
7.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
67.3%1(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
77.0%2(cos.f64 re)
77.0%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
67.3%1re
67.3%1im
77.1%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 25 to 30 computations (-20% saved)

regimes22.0ms (0.4%)

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

3 calls:

10.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
6.0ms
(cos.f64 re)
5.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
76.4%2(cos.f64 re)
76.4%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
76.3%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 17 to 19 computations (-11.8% saved)

regimes16.0ms (0.3%)

Memory
-16.3MiB live, 28.5MiB allocated; 8ms collecting garbage
Counts
14 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (*.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) #s(approx (+ (* (* im im) -1/6) -1) (*.f64 (*.f64 im im) #s(literal -1/6 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) 1/2) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (* (cos re) (+ (* (* -1/6 im) im) -1)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 #s(literal 0 binary64) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.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 (- 0 im)) (exp im))) (*.f64 (*.f64 #s(approx (cos re) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im))
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) #s(approx (exp im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) (-.f64 #s(approx (exp (- 0 im)) (+.f64 (neg.f64 im) #s(literal 1 binary64))) (exp.f64 im)))
Outputs
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (* 2 (sinh im))) (+ (* (* re re) -1/4) 1/2)) #s(approx (* (* 1/4 (* re re)) (* (sinh im) 2)) (*.f64 (*.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))))
Calls

3 calls:

7.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
4.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
4.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
74.9%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
74.8%2(cos.f64 re)
74.8%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 17 to 19 computations (-11.8% saved)

regimes21.0ms (0.4%)

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

6 calls:

6.0ms
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
3.0ms
re
3.0ms
im
3.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
3.0ms
(cos.f64 re)
Results
AccuracySegmentsBranch
54.8%1(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
54.8%1im
54.8%1re
62.3%2(cos.f64 re)
62.3%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
62.3%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 25 to 30 computations (-20% saved)

regimes5.0ms (0.1%)

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

3 calls:

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 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
45.1%3(cos.f64 re)
45.1%3(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
62.3%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 17 to 19 computations (-11.8% saved)

regimes7.0ms (0.1%)

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

6 calls:

1.0ms
im
1.0ms
re
1.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
1.0ms
(cos.f64 re)
1.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
38.1%2(cos.f64 re)
38.1%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
36.6%2im
36.5%2(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
35.5%2re
38.2%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 25 to 30 computations (-20% saved)

regimes37.0ms (0.7%)

Memory
-30.9MiB live, 15.1MiB allocated; 5ms 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 (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg im) (cos re)) (neg.f64 im)))
Calls

6 calls:

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

Compiled 25 to 30 computations (-20% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.41152887158392576
+inf
0.0ms
-3.216265059005697e+30
-0.0003814700061908661
Compiler

Compiled 14 to 16 computations (-14.3% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.41152887158392576
+inf
0.0ms
-3.216265059005697e+30
-0.0003814700061908661
Compiler

Compiled 14 to 16 computations (-14.3% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
2.7146617613234406e-16
Compiler

Compiled 14 to 16 computations (-14.3% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.0079904062223007
0.0018803837693276014
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
2.7146617613234406e-16
Compiler

Compiled 14 to 16 computations (-14.3% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
2.7146617613234406e-16
Compiler

Compiled 14 to 16 computations (-14.3% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
2.7146617613234406e-16
0.0ms
-3.216265059005697e+30
-0.0003814700061908661
Compiler

Compiled 14 to 16 computations (-14.3% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
2.7146617613234406e-16
Compiler

Compiled 14 to 16 computations (-14.3% saved)

derivations829.0ms (14.8%)

Memory
-13.9MiB live, 669.1MiB allocated; 349ms collecting garbage
Stop Event
fuel
Compiler

Compiled 187 to 118 computations (36.9% saved)

preprocess269.0ms (4.8%)

Memory
10.3MiB live, 405.4MiB allocated; 62ms collecting garbage
Remove

(negabs im)

(abs re)

Compiler

Compiled 3 056 to 2 533 computations (17.1% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...