math.exp on complex, real part

Time bar (total: 3.5s)

start0.0ms (0%)

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

analyze0.0ms (0%)

Memory
0.7MiB live, 0.7MiB 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 7 to 7 computations (0% saved)

sample1.1s (32.3%)

Memory
45.3MiB live, 1 281.0MiB allocated; 504ms collecting garbage
Samples
959.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 682.0ms
ival-cos: 334.0ms (49% of total)
ival-exp: 309.0ms (45.3% of total)
ival-mult!: 38.0ms (5.6% of total)
adjust: 1.0ms (0.1% of total)
Bogosity

preprocess42.0ms (1.2%)

Memory
-20.3MiB live, 27.0MiB allocated; 18ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01634
16032
223832
3118932
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
Symmetry

(abs im)

Compiler

Compiled 10 to 10 computations (0% saved)

series4.0ms (0.1%)

Memory
5.8MiB live, 5.8MiB allocated; 0ms collecting garbage
Counts
5 → 18
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
(exp.f64 re)
re
(cos.f64 im)
im
Outputs
#s(approx (* (exp re) (cos im)) #s(hole binary64 (cos im)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (cos im)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* 1/2 (* re (cos im))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* re (+ (* 1/6 (* re (cos im))) (* 1/2 (cos im)))))))))
#s(approx (exp re) #s(hole binary64 1))
#s(approx (exp re) #s(hole binary64 (+ 1 re)))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* 1/2 re))))))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))))
#s(approx re #s(hole binary64 re))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (* (cos im) (exp re))))
#s(approx (exp re) #s(hole binary64 (exp re)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* -1/2 (* (pow im 2) (exp re))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* 1/24 (* (pow im 2) (exp re))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (exp re))) (* 1/24 (exp re)))))))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* -1/2 (pow im 2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 1/24 (pow im 2)) 1/2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/24 (* -1/720 (pow im 2)))) 1/2)))))
#s(approx im #s(hole binary64 im))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@-inf
((* (exp re) (cos im)) (exp re) re (cos im) im)
1.0ms
re
@inf
((* (exp re) (cos im)) (exp re) re (cos im) im)
0.0ms
im
@inf
((* (exp re) (cos im)) (exp re) re (cos im) im)
0.0ms
re
@0
((* (exp re) (cos im)) (exp re) re (cos im) im)
0.0ms
im
@0
((* (exp re) (cos im)) (exp re) re (cos im) im)

rewrite235.0ms (6.6%)

Memory
40.0MiB live, 173.9MiB allocated; 20ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
086265
088264
1617253
24663252
08745230
121990230
Stop Event
iter-limit
node-limit
iter-limit
Counts
23 → 67
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
(exp.f64 re)
re
(cos.f64 im)
im
#s(approx (* (exp re) (cos im)) #s(hole binary64 (cos im)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (cos im)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* 1/2 (* re (cos im))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* re (+ (* 1/6 (* re (cos im))) (* 1/2 (cos im)))))))))
#s(approx (exp re) #s(hole binary64 1))
#s(approx (exp re) #s(hole binary64 (+ 1 re)))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* 1/2 re))))))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))))
#s(approx re #s(hole binary64 re))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (* (cos im) (exp re))))
#s(approx (exp re) #s(hole binary64 (exp re)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* -1/2 (* (pow im 2) (exp re))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* 1/24 (* (pow im 2) (exp re))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (exp re))) (* 1/24 (exp re)))))))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* -1/2 (pow im 2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 1/24 (pow im 2)) 1/2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/24 (* -1/720 (pow im 2)))) 1/2)))))
#s(approx im #s(hole binary64 im))
Outputs
(*.f64 (cos.f64 im) (exp.f64 re))
(*.f64 (exp.f64 re) (cos.f64 im))
(fma.f64 (cosh.f64 re) (cos.f64 im) (*.f64 (sinh.f64 re) (cos.f64 im)))
(fma.f64 (cos.f64 im) (cosh.f64 re) (*.f64 (cos.f64 im) (sinh.f64 re)))
(+.f64 (*.f64 (cos.f64 im) (cosh.f64 re)) (*.f64 (cos.f64 im) (sinh.f64 re)))
(+.f64 (*.f64 (cosh.f64 re) (cos.f64 im)) (*.f64 (sinh.f64 re) (cos.f64 im)))
(pow.f64 (exp.f64 #s(literal 1 binary64)) re)
(pow.f64 (exp.f64 (+.f64 re re)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 re) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (pow.f64 (sinh.f64 re) #s(literal 3 binary64))) (fma.f64 (cosh.f64 re) (cosh.f64 re) (-.f64 (*.f64 (sinh.f64 re) (sinh.f64 re)) (*.f64 (cosh.f64 re) (sinh.f64 re)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 re)))
(sqrt.f64 (exp.f64 (+.f64 re re)))
(-.f64 (cosh.f64 re) (sinh.f64 (neg.f64 re)))
(fabs.f64 (neg.f64 (exp.f64 re)))
(fabs.f64 (exp.f64 re))
(exp.f64 (/.f64 (+.f64 re re) #s(literal 2 binary64)))
(exp.f64 (/.f64 (*.f64 re #s(literal 2 binary64)) #s(literal 2 binary64)))
(exp.f64 re)
(+.f64 (sinh.f64 re) (cosh.f64 re))
(+.f64 (cosh.f64 re) (sinh.f64 re))
re
(sin.f64 (+.f64 (neg.f64 (neg.f64 im)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 im)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 im)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 im) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 im) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) im))
(fma.f64 (neg.f64 (sin.f64 im)) #s(literal 0 binary64) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(fma.f64 (sin.f64 (fabs.f64 im)) #s(literal 0 binary64) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(fma.f64 (sin.f64 im) #s(literal 0 binary64) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 im) (*.f64 #s(literal 0 binary64) (sin.f64 im)))
(-.f64 (*.f64 (sin.f64 im) #s(literal 0 binary64)) (*.f64 (cos.f64 im) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 im))))
(cos.f64 (neg.f64 (neg.f64 (fabs.f64 im))))
(cos.f64 (neg.f64 (fabs.f64 (fabs.f64 im))))
(cos.f64 (fabs.f64 (neg.f64 (neg.f64 im))))
(cos.f64 (fabs.f64 (neg.f64 (fabs.f64 im))))
(cos.f64 (fabs.f64 (fabs.f64 (fabs.f64 im))))
(cos.f64 (neg.f64 (neg.f64 im)))
(cos.f64 (neg.f64 (fabs.f64 im)))
(cos.f64 (fabs.f64 (fabs.f64 im)))
(cos.f64 (neg.f64 im))
(cos.f64 (fabs.f64 im))
(cos.f64 im)
(+.f64 (*.f64 (neg.f64 (sin.f64 im)) #s(literal 0 binary64)) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 (fabs.f64 im)) #s(literal 0 binary64)) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 #s(literal 0 binary64) (sin.f64 im)))
(+.f64 (*.f64 (sin.f64 im) #s(literal 0 binary64)) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
im
#s(approx (* (exp re) (cos im)) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im)))
#s(approx (* (exp re) (cos im)) (fma.f64 (-.f64 re #s(literal -1 binary64)) (cos.f64 im) (*.f64 (*.f64 (*.f64 (cos.f64 im) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re) re)))
#s(approx (exp re) #s(literal 1 binary64))
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
#s(approx re re)
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (exp.f64 re)))
#s(approx (exp re) (exp.f64 re))
#s(approx (* (exp re) (cos im)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)) (exp.f64 re)))
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 im im) (*.f64 (exp.f64 re) (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64))) (exp.f64 re)))
#s(approx (* (exp re) (cos im)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)) (exp.f64 re) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (exp.f64 re) (fma.f64 #s(literal -1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))) im) im) im) im)))
#s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (cos im) (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal -1/2 binary64)) im) im #s(literal 1 binary64)))
#s(approx im im)

eval6.0ms (0.2%)

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

Compiled 373 to 214 computations (42.6% saved)

prune21.0ms (0.6%)

Memory
-46.4MiB live, 7.1MiB allocated; 9ms collecting garbage
Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New56662
Fresh000
Picked011
Done000
Total56763
Accuracy
100.0%
Counts
63 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
61.9%
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
60.9%
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
63.3%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
63.3%
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im)))
53.2%
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
52.5%
#s(approx (* (exp re) (cos im)) (cos.f64 im))
Compiler

Compiled 131 to 127 computations (3.1% saved)

series13.0ms (0.4%)

Memory
14.9MiB live, 14.9MiB allocated; 0ms collecting garbage
Counts
25 → 55
Calls
Call 1
Inputs
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im)))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im))
(*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
#s(literal 1/2 binary64)
re
#s(literal 1 binary64)
(cos.f64 im)
im
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(exp.f64 re)
#s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 im im)
#s(literal -1/2 binary64)
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64))
#s(literal 1/24 binary64)
#s(approx (* (exp re) (cos im)) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
(*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64)))
(-.f64 re #s(literal -1 binary64))
#s(literal -1 binary64)
Outputs
#s(approx (* (exp re) (cos im)) #s(hole binary64 (cos im)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (cos im)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* 1/2 (* re (cos im))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* re (+ (* 1/6 (* re (cos im))) (* 1/2 (cos im)))))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (+ (cos im) (* 1/2 (* re (cos im))))))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 1))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (+ 1 (* 1/2 re))))
#s(approx re #s(hole binary64 re))
#s(approx (exp re) #s(hole binary64 (+ 1 re)))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* 1/2 re))))))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (* (cos im) (exp re))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (* 1/2 (* (pow re 2) (cos im)))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (* (pow re 2) (+ (* 1/2 (cos im)) (/ (cos im) re)))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (* (pow re 2) (+ (* 1/2 (cos im)) (+ (/ (cos im) re) (/ (cos im) (pow re 2)))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (* 1/2 (* re (cos im)))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (* re (+ (* 1/2 (cos im)) (/ (cos im) re)))))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* 1/2 re)))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* re (+ 1/2 (/ 1 re)))))
#s(approx (exp re) #s(hole binary64 (exp re)))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (* re (cos im))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (* re (+ (cos im) (/ (cos im) re)))))
#s(approx (- re -1) #s(hole binary64 (* re (+ 1 (/ 1 re)))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (* (pow re 2) (+ (* -1 (/ (+ (* -1 (cos im)) (* -1 (/ (cos im) re))) re)) (* 1/2 (cos im))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (cos im) re)) (* -1/2 (cos im)))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (* -1 (* re (+ (* -1 (cos im)) (* -1 (/ (cos im) re)))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* -1/2 (* (pow im 2) (exp re))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* 1/24 (* (pow im 2) (exp re))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (exp re))) (* 1/24 (exp re)))))))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (+ 1 (+ (* re (+ 1 (* 1/2 re))) (* (pow im 2) (- (* -1/2 (* re (+ 1 (* 1/2 re)))) 1/2))))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (+ 1 (+ (* re (+ 1 (* 1/2 re))) (* (pow im 2) (- (+ (* -1/2 (* re (+ 1 (* 1/2 re)))) (* (pow im 2) (+ 1/24 (* 1/24 (* re (+ 1 (* 1/2 re))))))) 1/2))))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (+ 1 (+ (* re (+ 1 (* 1/2 re))) (* (pow im 2) (- (+ (* -1/2 (* re (+ 1 (* 1/2 re)))) (* (pow im 2) (+ 1/24 (+ (* 1/24 (* re (+ 1 (* 1/2 re)))) (* (pow im 2) (- (* -1/720 (* re (+ 1 (* 1/2 re)))) 1/720)))))) 1/2))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (+ 1 (+ (* -1/2 (* (pow im 2) (+ 1 (* 1/2 re)))) (* 1/2 re)))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (+ 1 (+ (* 1/2 re) (* (pow im 2) (+ (* -1/2 (+ 1 (* 1/2 re))) (* 1/24 (* (pow im 2) (+ 1 (* 1/2 re))))))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (+ 1 (+ (* 1/2 re) (* (pow im 2) (+ (* -1/2 (+ 1 (* 1/2 re))) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (+ 1 (* 1/2 re)))) (* 1/24 (+ 1 (* 1/2 re)))))))))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* -1/2 (pow im 2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 1/24 (pow im 2)) 1/2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/24 (* -1/720 (pow im 2)))) 1/2)))))
#s(approx im #s(hole binary64 im))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (- (* 1/24 (pow im 2)) 1/2)))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* -1/2 (* (pow im 2) (+ 1 re)))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* (pow im 2) (+ (* -1/2 (+ 1 re)) (* 1/24 (* (pow im 2) (+ 1 re)))))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* (pow im 2) (+ (* -1/2 (+ 1 re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (+ 1 re))) (* 1/24 (+ 1 re))))))))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (+ (cos im) (* re (* (cos im) (+ 1 (* 1/2 re)))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (* (cos im) (+ 1 (* 1/2 re)))))
#s(approx (+ (* (* im im) -1/2) 1) #s(hole binary64 (* -1/2 (pow im 2))))
#s(approx (+ (* (* im im) -1/2) 1) #s(hole binary64 (* (pow im 2) (- (/ 1 (pow im 2)) 1/2))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* 1/24 (pow im 4))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* (pow im 4) (- 1/24 (* 1/2 (/ 1 (pow im 2)))))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* (pow im 4) (- (+ 1/24 (/ 1 (pow im 4))) (* 1/2 (/ 1 (pow im 2)))))))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (* 1/24 (pow im 2))))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (* (pow im 2) (- 1/24 (* 1/2 (/ 1 (pow im 2)))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (* (cos im) (+ 1 re))))
Calls

6 calls:

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

rewrite229.0ms (6.5%)

Memory
19.6MiB live, 204.3MiB allocated; 35ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02621267
02881219
119431217
082751172
1226171172
Stop Event
iter-limit
node-limit
iter-limit
Counts
80 → 243
Calls
Call 1
Inputs
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im)))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im))
(*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
#s(literal 1/2 binary64)
re
#s(literal 1 binary64)
(cos.f64 im)
im
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(exp.f64 re)
#s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 im im)
#s(literal -1/2 binary64)
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64))
#s(literal 1/24 binary64)
#s(approx (* (exp re) (cos im)) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
(*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64)))
(-.f64 re #s(literal -1 binary64))
#s(literal -1 binary64)
#s(approx (* (exp re) (cos im)) #s(hole binary64 (cos im)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (cos im)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* 1/2 (* re (cos im))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* re (+ (* 1/6 (* re (cos im))) (* 1/2 (cos im)))))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (+ (cos im) (* 1/2 (* re (cos im))))))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 1))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (+ 1 (* 1/2 re))))
#s(approx re #s(hole binary64 re))
#s(approx (exp re) #s(hole binary64 (+ 1 re)))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* 1/2 re))))))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (* (cos im) (exp re))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (* 1/2 (* (pow re 2) (cos im)))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (* (pow re 2) (+ (* 1/2 (cos im)) (/ (cos im) re)))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (* (pow re 2) (+ (* 1/2 (cos im)) (+ (/ (cos im) re) (/ (cos im) (pow re 2)))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (* 1/2 (* re (cos im)))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (* re (+ (* 1/2 (cos im)) (/ (cos im) re)))))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* 1/2 re)))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* re (+ 1/2 (/ 1 re)))))
#s(approx (exp re) #s(hole binary64 (exp re)))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (* re (cos im))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (* re (+ (cos im) (/ (cos im) re)))))
#s(approx (- re -1) #s(hole binary64 (* re (+ 1 (/ 1 re)))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (* (pow re 2) (+ (* -1 (/ (+ (* -1 (cos im)) (* -1 (/ (cos im) re))) re)) (* 1/2 (cos im))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (cos im) re)) (* -1/2 (cos im)))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (* -1 (* re (+ (* -1 (cos im)) (* -1 (/ (cos im) re)))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* -1/2 (* (pow im 2) (exp re))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* 1/24 (* (pow im 2) (exp re))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (exp re))) (* 1/24 (exp re)))))))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (+ 1 (+ (* re (+ 1 (* 1/2 re))) (* (pow im 2) (- (* -1/2 (* re (+ 1 (* 1/2 re)))) 1/2))))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (+ 1 (+ (* re (+ 1 (* 1/2 re))) (* (pow im 2) (- (+ (* -1/2 (* re (+ 1 (* 1/2 re)))) (* (pow im 2) (+ 1/24 (* 1/24 (* re (+ 1 (* 1/2 re))))))) 1/2))))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (+ 1 (+ (* re (+ 1 (* 1/2 re))) (* (pow im 2) (- (+ (* -1/2 (* re (+ 1 (* 1/2 re)))) (* (pow im 2) (+ 1/24 (+ (* 1/24 (* re (+ 1 (* 1/2 re)))) (* (pow im 2) (- (* -1/720 (* re (+ 1 (* 1/2 re)))) 1/720)))))) 1/2))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (+ 1 (+ (* -1/2 (* (pow im 2) (+ 1 (* 1/2 re)))) (* 1/2 re)))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (+ 1 (+ (* 1/2 re) (* (pow im 2) (+ (* -1/2 (+ 1 (* 1/2 re))) (* 1/24 (* (pow im 2) (+ 1 (* 1/2 re))))))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (+ 1 (+ (* 1/2 re) (* (pow im 2) (+ (* -1/2 (+ 1 (* 1/2 re))) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (+ 1 (* 1/2 re)))) (* 1/24 (+ 1 (* 1/2 re)))))))))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* -1/2 (pow im 2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 1/24 (pow im 2)) 1/2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/24 (* -1/720 (pow im 2)))) 1/2)))))
#s(approx im #s(hole binary64 im))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (- (* 1/24 (pow im 2)) 1/2)))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* -1/2 (* (pow im 2) (+ 1 re)))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* (pow im 2) (+ (* -1/2 (+ 1 re)) (* 1/24 (* (pow im 2) (+ 1 re)))))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* (pow im 2) (+ (* -1/2 (+ 1 re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (+ 1 re))) (* 1/24 (+ 1 re))))))))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) #s(hole binary64 (+ (cos im) (* re (* (cos im) (+ 1 (* 1/2 re)))))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) #s(hole binary64 (* (cos im) (+ 1 (* 1/2 re)))))
#s(approx (+ (* (* im im) -1/2) 1) #s(hole binary64 (* -1/2 (pow im 2))))
#s(approx (+ (* (* im im) -1/2) 1) #s(hole binary64 (* (pow im 2) (- (/ 1 (pow im 2)) 1/2))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* 1/24 (pow im 4))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* (pow im 4) (- 1/24 (* 1/2 (/ 1 (pow im 2)))))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* (pow im 4) (- (+ 1/24 (/ 1 (pow im 4))) (* 1/2 (/ 1 (pow im 2)))))))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (* 1/24 (pow im 2))))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (* (pow im 2) (- 1/24 (* 1/2 (/ 1 (pow im 2)))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (* (cos im) (+ 1 re))))
Outputs
#s(approx (* (exp re) (cos im)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re) (cos.f64 im)))
(/.f64 (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (*.f64 (*.f64 (neg.f64 re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im))) (*.f64 (neg.f64 re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im))))) (+.f64 (cos.f64 im) (*.f64 (neg.f64 re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 3 binary64)) (pow.f64 (neg.f64 (cos.f64 im)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 2 binary64)) (+.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) (neg.f64 (cos.f64 im))))))
(/.f64 (-.f64 (pow.f64 (cos.f64 im) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im))) #s(literal 3 binary64))) (+.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (fma.f64 (*.f64 (neg.f64 re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im))) (*.f64 (neg.f64 re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im))) (*.f64 (cos.f64 im) (*.f64 (neg.f64 re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)))))))
(/.f64 (-.f64 (pow.f64 (cos.f64 im) #s(literal 3 binary64)) (pow.f64 (neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re))) #s(literal 3 binary64))) (+.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 2 binary64)) (*.f64 (cos.f64 im) (neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)))))))
(/.f64 (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 2 binary64))) (+.f64 (cos.f64 im) (neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)))))
(/.f64 (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 2 binary64))) (-.f64 (cos.f64 im) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re) (neg.f64 (cos.f64 im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))) (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) (cos.f64 im)))
(/.f64 (+.f64 (pow.f64 (cos.f64 im) #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 3 binary64))) (+.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 2 binary64)) (*.f64 (cos.f64 im) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 3 binary64)) (pow.f64 (cos.f64 im) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) #s(literal 2 binary64)) (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) (cos.f64 im)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re) (cos.f64 im))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im))
(fma.f64 (*.f64 (cos.f64 im) re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im))
(fma.f64 re (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) (cos.f64 im))
(-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) (neg.f64 (cos.f64 im)))
(-.f64 (cos.f64 im) (*.f64 (neg.f64 re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im))))
(-.f64 (cos.f64 im) (neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re))))
(+.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)) (cos.f64 im))
(+.f64 (cos.f64 im) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im))
(*.f64 (cos.f64 im) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) #s(literal 1 binary64))) (*.f64 (*.f64 (cos.f64 im) (*.f64 #s(literal 1/2 binary64) re)) (*.f64 (cos.f64 im) (*.f64 #s(literal 1/2 binary64) re)))) (-.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) (*.f64 #s(literal 1/2 binary64) re))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 #s(literal 1 binary64) (cos.f64 im))) (pow.f64 (*.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 im) (*.f64 #s(literal 1/2 binary64) re)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 (cos.f64 im) (*.f64 #s(literal 1/2 binary64) re)) (*.f64 (cos.f64 im) (*.f64 #s(literal 1/2 binary64) re))) (*.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) (*.f64 #s(literal 1/2 binary64) re))))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 #s(literal 1 binary64) (cos.f64 im)) (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64))))))
(fma.f64 #s(literal 1 binary64) (cos.f64 im) (*.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64)))
(fma.f64 (cos.f64 im) #s(literal 1 binary64) (*.f64 (cos.f64 im) (*.f64 #s(literal 1/2 binary64) re)))
(+.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) (*.f64 #s(literal 1/2 binary64) re)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64)))
(*.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64)) re)
(*.f64 re (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re)) (*.f64 (*.f64 re (/.f64 #s(literal 1 binary64) re)) (*.f64 re (/.f64 #s(literal 1 binary64) re)))) (-.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 re (/.f64 #s(literal 1 binary64) re))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) re) (*.f64 #s(literal -1/2 binary64) re))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) re)))
(/.f64 (fma.f64 (*.f64 (*.f64 re re) re) #s(literal 1/8 binary64) (pow.f64 (*.f64 re (/.f64 #s(literal 1 binary64) re)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re) (-.f64 (*.f64 (*.f64 re (/.f64 #s(literal 1 binary64) re)) (*.f64 re (/.f64 #s(literal 1 binary64) re))) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 re (/.f64 #s(literal 1 binary64) re))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) re) #s(literal 1/8 binary64)) #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal -1 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) re) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (*.f64 #s(literal -1/2 binary64) re) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) re)))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) re)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1 binary64) (neg.f64 (*.f64 #s(literal 1/2 binary64) re))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re))) (+.f64 #s(literal 1 binary64) (neg.f64 (*.f64 #s(literal 1/2 binary64) re))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re))) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re)))
(/.f64 (fma.f64 (*.f64 (*.f64 re re) re) #s(literal 1/8 binary64) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) re) #s(literal 1/8 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re)) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re)))))
(fma.f64 #s(literal 1/2 binary64) re (*.f64 re (/.f64 #s(literal 1 binary64) re)))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
(fma.f64 re #s(literal 1/2 binary64) (*.f64 re (/.f64 #s(literal 1 binary64) re)))
(fma.f64 re #s(literal 1/2 binary64) #s(literal 1 binary64))
(-.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) re))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 #s(literal 1/2 binary64) re)))
(+.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 re (/.f64 #s(literal 1 binary64) re)))
(+.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re))
#s(literal 1/2 binary64)
re
#s(literal 1 binary64)
(sin.f64 (+.f64 (neg.f64 im) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (fabs.f64 im) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 im) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 im) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 im)))
(cos.f64 (neg.f64 (fabs.f64 im)))
(cos.f64 (fabs.f64 (fabs.f64 im)))
(cos.f64 (neg.f64 im))
(cos.f64 (fabs.f64 im))
(cos.f64 im)
(+.f64 (*.f64 (sin.f64 im) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 im) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
im
(*.f64 #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))) (exp.f64 re))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(/.f64 (-.f64 (*.f64 (cosh.f64 re) (cosh.f64 re)) (*.f64 (sinh.f64 re) (sinh.f64 re))) (-.f64 (cosh.f64 re) (sinh.f64 re)))
(/.f64 (+.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (pow.f64 (sinh.f64 re) #s(literal 3 binary64))) (fma.f64 (cosh.f64 re) (cosh.f64 re) (-.f64 (*.f64 (sinh.f64 re) (sinh.f64 re)) (*.f64 (cosh.f64 re) (sinh.f64 re)))))
(sqrt.f64 (exp.f64 (+.f64 re re)))
(fabs.f64 (neg.f64 (exp.f64 re)))
(fabs.f64 (exp.f64 re))
(exp.f64 re)
(+.f64 (cosh.f64 re) (sinh.f64 re))
#s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) (*.f64 #s(literal 1/2 binary64) (*.f64 im im)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 im im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 3 binary64)) #s(literal -1 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal -1 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 im im))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))) (+.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))) #s(literal 1 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 1 binary64)))))
(fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 im (*.f64 im #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 im im)))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))
(*.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)))
(*.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)))
(*.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 im)))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 im im)
(pow.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 (fabs.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/2 binary64)
(*.f64 #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (exp.f64 re))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))) (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal -1 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64))) (+.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 1 binary64)))))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im #s(literal 1 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im)))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))) (-.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))))
(/.f64 (+.f64 #s(literal -1/8 binary64) (pow.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) #s(literal 1/4 binary64)) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal 1/13824 binary64) #s(literal -1/8 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))
(neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))))
(fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64))
(-.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(+.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) #s(literal -1/2 binary64))
(+.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))
#s(literal 1/24 binary64)
#s(approx (* (exp re) (cos im)) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
(*.f64 (-.f64 re #s(literal -1 binary64)) (cos.f64 im))
(*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) #s(literal 1 binary64))) (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64))) (-.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 #s(literal 1 binary64) (cos.f64 im))) (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 (cos.f64 im) re)))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)))
(/.f64 (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (*.f64 (*.f64 (neg.f64 re) (cos.f64 im)) (*.f64 (neg.f64 re) (cos.f64 im)))) (+.f64 (cos.f64 im) (*.f64 (neg.f64 re) (cos.f64 im))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) #s(literal 1 binary64)) (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 #s(literal 1 binary64) (cos.f64 im)) (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 (cos.f64 im) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 3 binary64)) (pow.f64 (cos.f64 im) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (*.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 im) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 re) (cos.f64 im)) #s(literal 3 binary64))) (+.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (fma.f64 (*.f64 (neg.f64 re) (cos.f64 im)) (*.f64 (neg.f64 re) (cos.f64 im)) (*.f64 (cos.f64 im) (*.f64 (neg.f64 re) (cos.f64 im))))))
(/.f64 (-.f64 (pow.f64 (cos.f64 im) #s(literal 3 binary64)) (pow.f64 (neg.f64 (*.f64 (cos.f64 im) re)) #s(literal 3 binary64))) (+.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (+.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (*.f64 (cos.f64 im) (neg.f64 (*.f64 (cos.f64 im) re))))))
(/.f64 (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64))) (+.f64 (cos.f64 im) (neg.f64 (*.f64 (cos.f64 im) re))))
(/.f64 (-.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64))) (-.f64 (cos.f64 im) (*.f64 (cos.f64 im) re)))
(/.f64 (+.f64 (pow.f64 (cos.f64 im) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 3 binary64))) (+.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))) (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (*.f64 (cos.f64 im) (*.f64 (cos.f64 im) re)))))
(fma.f64 #s(literal 1 binary64) (cos.f64 im) (*.f64 (cos.f64 im) re))
(fma.f64 (cos.f64 im) #s(literal 1 binary64) (*.f64 (cos.f64 im) re))
(fma.f64 (cos.f64 im) re (cos.f64 im))
(fma.f64 re (cos.f64 im) (cos.f64 im))
(-.f64 (cos.f64 im) (*.f64 (neg.f64 re) (cos.f64 im)))
(-.f64 (cos.f64 im) (neg.f64 (*.f64 (cos.f64 im) re)))
(+.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) re))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 (cos.f64 im) re))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re))
(/.f64 (fma.f64 (*.f64 re re) re #s(literal 1 binary64)) (fma.f64 re re (-.f64 #s(literal 1 binary64) (*.f64 re #s(literal 1 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 re) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 re re (*.f64 #s(literal 1 binary64) (neg.f64 re)))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re)) (+.f64 #s(literal 1 binary64) (neg.f64 re)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re)) (-.f64 #s(literal 1 binary64) re))
(/.f64 (-.f64 (*.f64 re re) #s(literal 1 binary64)) (-.f64 re #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 re re) #s(literal 1 binary64)) (+.f64 re #s(literal -1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 #s(literal 1 binary64) re))))
(/.f64 (-.f64 (*.f64 (*.f64 re re) re) #s(literal -1 binary64)) (fma.f64 re re (+.f64 #s(literal 1 binary64) (*.f64 re #s(literal -1 binary64)))))
(neg.f64 (-.f64 #s(literal -1 binary64) re))
(-.f64 #s(literal 1 binary64) (neg.f64 re))
(-.f64 re #s(literal -1 binary64))
(+.f64 #s(literal 1 binary64) re)
(+.f64 re #s(literal 1 binary64))
#s(literal -1 binary64)
#s(approx (* (exp re) (cos im)) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (exp re) (cos im)) (fma.f64 re (fma.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64) (cos.f64 im)) (cos.f64 im)))
#s(approx (* (exp re) (cos im)) (fma.f64 re (fma.f64 re (fma.f64 #s(literal 1/6 binary64) (*.f64 (cos.f64 im) re) (*.f64 #s(literal 1/2 binary64) (cos.f64 im))) (cos.f64 im)) (cos.f64 im)))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) (fma.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64) (cos.f64 im)))
#s(approx (+ (* 1/2 re) 1) #s(literal 1 binary64))
#s(approx (+ (* 1/2 re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))
#s(approx re re)
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (exp.f64 re)))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) (*.f64 (*.f64 (*.f64 re re) (cos.f64 im)) #s(literal 1/2 binary64)))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) (*.f64 (fma.f64 (cos.f64 im) #s(literal 1/2 binary64) (/.f64 (cos.f64 im) re)) (*.f64 re re)))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) (*.f64 (fma.f64 (cos.f64 im) #s(literal 1/2 binary64) (+.f64 (/.f64 (cos.f64 im) (*.f64 re re)) (/.f64 (cos.f64 im) re))) (*.f64 re re)))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) (*.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64)))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) (*.f64 (fma.f64 (cos.f64 im) #s(literal 1/2 binary64) (/.f64 (cos.f64 im) re)) re))
#s(approx (+ (* 1/2 re) 1) (*.f64 #s(literal 1/2 binary64) re))
#s(approx (+ (* 1/2 re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))
#s(approx (exp re) (exp.f64 re))
#s(approx (* (cos im) (- re -1)) (*.f64 (cos.f64 im) re))
#s(approx (* (cos im) (- re -1)) (*.f64 (+.f64 (/.f64 (cos.f64 im) re) (cos.f64 im)) re))
#s(approx (- re -1) (fma.f64 #s(literal 1 binary64) re #s(literal 1 binary64)))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) (*.f64 (fma.f64 (cos.f64 im) #s(literal 1/2 binary64) (neg.f64 (/.f64 (+.f64 (/.f64 (neg.f64 (cos.f64 im)) re) (neg.f64 (cos.f64 im))) re))) (*.f64 re re)))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) (neg.f64 (*.f64 (fma.f64 (cos.f64 im) #s(literal -1/2 binary64) (/.f64 (neg.f64 (cos.f64 im)) re)) re)))
#s(approx (* (cos im) (- re -1)) (neg.f64 (*.f64 (+.f64 (/.f64 (neg.f64 (cos.f64 im)) re) (neg.f64 (cos.f64 im))) re)))
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (exp.f64 re) (exp.f64 re)))
#s(approx (* (exp re) (cos im)) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (exp.f64 re) (*.f64 #s(literal -1/2 binary64) (exp.f64 re))) (*.f64 im im) (exp.f64 re)))
#s(approx (* (exp re) (cos im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 im im)) (exp.f64 re) (*.f64 #s(literal 1/24 binary64) (exp.f64 re))) (*.f64 im im) (*.f64 #s(literal -1/2 binary64) (exp.f64 re))) (*.f64 im im) (exp.f64 re)))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) (+.f64 (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal -1/2 binary64) #s(literal -1/2 binary64)) (*.f64 im im))))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) (+.f64 (fma.f64 (-.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 1/24 binary64) #s(literal 1/24 binary64)) (*.f64 im im))) #s(literal 1/2 binary64)) (*.f64 im im) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)) #s(literal 1 binary64)))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) (+.f64 (fma.f64 (-.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal -1/720 binary64)) (*.f64 im im))) #s(literal 1/24 binary64)) (*.f64 im im))) #s(literal 1/2 binary64)) (*.f64 im im) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)) #s(literal 1 binary64)))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 #s(literal 1/2 binary64) re)) #s(literal 1 binary64)))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) (+.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/24 binary64)) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) #s(literal -1/2 binary64))) (*.f64 im im))))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) (+.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 im im)) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) #s(literal 1/24 binary64))) (*.f64 im im) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) #s(literal -1/2 binary64))) (*.f64 im im))))
#s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (cos im) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx im im)
#s(approx (* im im) (*.f64 im im))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(literal -1/2 binary64))
#s(approx (+ (* 1/24 (* im im)) -1/2) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))
#s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64)))
#s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 im im) (-.f64 re #s(literal -1 binary64))) #s(literal 1/24 binary64) (*.f64 (-.f64 re #s(literal -1 binary64)) #s(literal -1/2 binary64))) (*.f64 im im) re) #s(literal 1 binary64)))
#s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 (*.f64 im im) (-.f64 re #s(literal -1 binary64))) #s(literal -1/720 binary64) (*.f64 (-.f64 re #s(literal -1 binary64)) #s(literal 1/24 binary64))) (*.f64 (-.f64 re #s(literal -1 binary64)) #s(literal -1/2 binary64))) (*.f64 im im) re) #s(literal 1 binary64)))
#s(approx (+ (* (* (+ (* 1/2 re) 1) (cos im)) re) (cos im)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (*.f64 (cos.f64 im) re) (cos.f64 im)))
#s(approx (* (+ (* 1/2 re) 1) (cos im)) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)))
#s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))
#s(approx (+ (* (* im im) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/2 binary64)) (*.f64 im im)))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/24 binary64)))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) (*.f64 (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 im im))) (pow.f64 im #s(literal 4 binary64))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) (*.f64 (+.f64 #s(literal 1/24 binary64) (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 im im))) (/.f64 #s(literal 1/2 binary64) (*.f64 im im)))) (pow.f64 im #s(literal 4 binary64))))
#s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64)))
#s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 im im))) (*.f64 im im)))
#s(approx (* (cos im) (- re -1)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))

eval31.0ms (0.9%)

Memory
6.7MiB live, 53.0MiB allocated; 4ms collecting garbage
Compiler

Compiled 2 888 to 1 215 computations (57.9% saved)

prune17.0ms (0.5%)

Memory
-16.4MiB live, 29.4MiB allocated; 5ms collecting garbage
Pruning

15 alts after pruning (10 fresh and 5 done)

PrunedKeptTotal
New2629271
Fresh011
Picked145
Done011
Total26315278
Accuracy
100.0%
Counts
278 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
61.9%
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
60.9%
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
61.9%
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 im im) #s(literal 1 binary64))))
24.8%
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
63.3%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
36.8%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
33.9%
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
30.1%
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
63.3%
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im)))
62.4%
#s(approx (* (exp re) (cos im)) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
53.2%
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
30.8%
#s(approx (* (exp re) (cos im)) (sin.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64)))))
52.5%
#s(approx (* (exp re) (cos im)) (cos.f64 im))
30.1%
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64))))
Compiler

Compiled 345 to 332 computations (3.8% saved)

series9.0ms (0.3%)

Memory
26.4MiB live, 26.4MiB allocated; 0ms collecting garbage
Counts
32 → 36
Calls
Call 1
Inputs
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
#s(literal 1/2 binary64)
re
#s(literal 1 binary64)
(cos.f64 im)
im
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
(-.f64 re #s(literal -1 binary64))
#s(literal -1 binary64)
#s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 im im)
#s(literal -1/2 binary64)
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
(exp.f64 re)
#s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))))
#s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))
(*.f64 (*.f64 im im) #s(literal -1/2 binary64))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64))
#s(literal 1/24 binary64)
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64))
(*.f64 #s(literal 1/24 binary64) im)
Outputs
#s(approx (* (exp re) (cos im)) #s(hole binary64 (cos im)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (cos im)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* 1/2 (* re (cos im))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* re (+ (* 1/6 (* re (cos im))) (* 1/2 (cos im)))))))))
#s(approx (exp re) #s(hole binary64 1))
#s(approx (exp re) #s(hole binary64 (+ 1 re)))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* 1/2 re))))))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (+ 1 (* 1/2 re))))
#s(approx re #s(hole binary64 re))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (* (cos im) (exp re))))
#s(approx (exp re) #s(hole binary64 (exp re)))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* 1/2 (pow re 2))))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* (pow re 2) (+ 1/2 (/ 1 re)))))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* (pow re 2) (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))))))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* 1/2 re)))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* re (+ 1/2 (/ 1 re)))))
#s(approx (- re -1) #s(hole binary64 (* re (+ 1 (/ 1 re)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* -1/2 (* (pow im 2) (exp re))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* 1/24 (* (pow im 2) (exp re))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (exp re))) (* 1/24 (exp re)))))))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* -1/2 (pow im 2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 1/24 (pow im 2)) 1/2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/24 (* -1/720 (pow im 2)))) 1/2)))))
#s(approx im #s(hole binary64 im))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (* (* im im) -1/2) #s(hole binary64 (* -1/2 (pow im 2))))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (- (* 1/24 (pow im 2)) 1/2)))
#s(approx (* 1/24 im) #s(hole binary64 (* 1/24 im)))
#s(approx (+ (* (* im im) -1/2) 1) #s(hole binary64 (* (pow im 2) (- (/ 1 (pow im 2)) 1/2))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* 1/24 (pow im 4))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* (pow im 4) (- 1/24 (* 1/2 (/ 1 (pow im 2)))))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* (pow im 4) (- (+ 1/24 (/ 1 (pow im 4))) (* 1/2 (/ 1 (pow im 2)))))))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (* 1/24 (pow im 2))))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (* (pow im 2) (- 1/24 (* 1/2 (/ 1 (pow im 2)))))))
Calls

6 calls:

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

rewrite279.0ms (7.9%)

Memory
-29.4MiB live, 216.3MiB allocated; 59ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0165759
0196736
11087715
26896715
08035698
121603698
Stop Event
iter-limit
node-limit
iter-limit
Counts
68 → 315
Calls
Call 1
Inputs
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
#s(literal 1/2 binary64)
re
#s(literal 1 binary64)
(cos.f64 im)
im
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
(-.f64 re #s(literal -1 binary64))
#s(literal -1 binary64)
#s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 im im)
#s(literal -1/2 binary64)
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
(exp.f64 re)
#s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))))
#s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))
(*.f64 (*.f64 im im) #s(literal -1/2 binary64))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64))
#s(literal 1/24 binary64)
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64))
(*.f64 #s(literal 1/24 binary64) im)
#s(approx (* (exp re) (cos im)) #s(hole binary64 (cos im)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (cos im)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* 1/2 (* re (cos im))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* re (+ (* 1/6 (* re (cos im))) (* 1/2 (cos im)))))))))
#s(approx (exp re) #s(hole binary64 1))
#s(approx (exp re) #s(hole binary64 (+ 1 re)))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* 1/2 re))))))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (+ 1 (* 1/2 re))))
#s(approx re #s(hole binary64 re))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (* (cos im) (exp re))))
#s(approx (exp re) #s(hole binary64 (exp re)))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* 1/2 (pow re 2))))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* (pow re 2) (+ 1/2 (/ 1 re)))))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* (pow re 2) (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))))))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* 1/2 re)))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* re (+ 1/2 (/ 1 re)))))
#s(approx (- re -1) #s(hole binary64 (* re (+ 1 (/ 1 re)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* -1/2 (* (pow im 2) (exp re))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* 1/24 (* (pow im 2) (exp re))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (exp re))) (* 1/24 (exp re)))))))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* -1/2 (pow im 2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 1/24 (pow im 2)) 1/2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/24 (* -1/720 (pow im 2)))) 1/2)))))
#s(approx im #s(hole binary64 im))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (* (* im im) -1/2) #s(hole binary64 (* -1/2 (pow im 2))))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (- (* 1/24 (pow im 2)) 1/2)))
#s(approx (* 1/24 im) #s(hole binary64 (* 1/24 im)))
#s(approx (+ (* (* im im) -1/2) 1) #s(hole binary64 (* (pow im 2) (- (/ 1 (pow im 2)) 1/2))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* 1/24 (pow im 4))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* (pow im 4) (- 1/24 (* 1/2 (/ 1 (pow im 2)))))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) #s(hole binary64 (* (pow im 4) (- (+ 1/24 (/ 1 (pow im 4))) (* 1/2 (/ 1 (pow im 2)))))))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (* 1/24 (pow im 2))))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(hole binary64 (* (pow im 2) (- 1/24 (* 1/2 (/ 1 (pow im 2)))))))
Outputs
(*.f64 (cos.f64 im) #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))))))
(/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal -1 binary64)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal -1 binary64)))
(/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal -1 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 1 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal -1 binary64)))))
(neg.f64 (-.f64 (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) #s(literal 1 binary64)))
(neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))))
(neg.f64 (-.f64 #s(literal -1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)))
(fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1 binary64)) re (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 (*.f64 re re) (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 re (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1 binary64)) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 re (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))))
(+.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(+.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (neg.f64 re)) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))))
(+.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))
(+.f64 re (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(+.f64 re (-.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1/2 binary64)) re)
(*.f64 re (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1/2 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) re) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) re)))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 re re))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) re)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 re re))) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re)))
(/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) #s(literal -1 binary64)) (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)))
(/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) #s(literal -1 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 re re) re) #s(literal 1/8 binary64) #s(literal 1 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re))))
(/.f64 (fma.f64 (*.f64 (*.f64 re re) re) #s(literal 1/8 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re)))))
(/.f64 (fma.f64 (*.f64 (*.f64 re re) re) #s(literal 1/8 binary64) #s(literal 1 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal -1 binary64)))))
(neg.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) re) #s(literal 1 binary64)))
(neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) re)))
(neg.f64 (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 1/2 binary64) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
(fma.f64 re #s(literal 1/2 binary64) #s(literal 1 binary64))
(-.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 (neg.f64 re) (/.f64 #s(literal 1 binary64) re)))
(-.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 (/.f64 #s(literal -1 binary64) re) re))
(-.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) re))
(+.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re))
#s(literal 1/2 binary64)
re
#s(literal 1 binary64)
(sin.f64 (+.f64 (neg.f64 (neg.f64 im)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 im)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 im)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 im) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 im) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) im))
(fma.f64 (neg.f64 (sin.f64 im)) #s(literal 0 binary64) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(fma.f64 (sin.f64 (fabs.f64 im)) #s(literal 0 binary64) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(fma.f64 (sin.f64 im) #s(literal 0 binary64) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 im) (*.f64 #s(literal 0 binary64) (sin.f64 im)))
(-.f64 (*.f64 (sin.f64 im) #s(literal 0 binary64)) (*.f64 (cos.f64 im) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 im))))
(cos.f64 (neg.f64 (neg.f64 (fabs.f64 im))))
(cos.f64 (neg.f64 (fabs.f64 (fabs.f64 im))))
(cos.f64 (fabs.f64 (neg.f64 (neg.f64 im))))
(cos.f64 (fabs.f64 (neg.f64 (fabs.f64 im))))
(cos.f64 (fabs.f64 (fabs.f64 (fabs.f64 im))))
(cos.f64 (neg.f64 (neg.f64 im)))
(cos.f64 (neg.f64 (fabs.f64 im)))
(cos.f64 (fabs.f64 (fabs.f64 im)))
(cos.f64 (neg.f64 im))
(cos.f64 (fabs.f64 im))
(cos.f64 im)
(+.f64 (*.f64 (neg.f64 (sin.f64 im)) #s(literal 0 binary64)) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 (fabs.f64 im)) #s(literal 0 binary64)) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 im) #s(literal 0 binary64)) (*.f64 (cos.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 #s(literal 0 binary64) (sin.f64 im)))
im
(*.f64 #s(approx (cos im) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) im #s(literal 1 binary64))) #s(approx (exp re) (-.f64 re #s(literal -1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) im #s(literal 1 binary64))))
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1 binary64)) re)
(*.f64 re (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal -1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 re) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 re re (*.f64 #s(literal 1 binary64) (neg.f64 re)))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re)) (+.f64 #s(literal 1 binary64) (neg.f64 re)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re)) (-.f64 #s(literal 1 binary64) re))
(/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))
(/.f64 (fma.f64 re re #s(literal -1 binary64)) (+.f64 re #s(literal -1 binary64)))
(/.f64 (fma.f64 (*.f64 re re) re #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) re)))
(/.f64 (fma.f64 (*.f64 re re) re #s(literal 1 binary64)) (fma.f64 re re (+.f64 #s(literal 1 binary64) (*.f64 re #s(literal -1 binary64)))))
(/.f64 (fma.f64 (*.f64 re re) re #s(literal 1 binary64)) (fma.f64 re re (-.f64 #s(literal 1 binary64) re)))
(neg.f64 (-.f64 (neg.f64 re) #s(literal 1 binary64)))
(neg.f64 (-.f64 #s(literal -1 binary64) re))
(-.f64 #s(literal 1 binary64) (neg.f64 re))
(-.f64 re (*.f64 (neg.f64 re) (/.f64 #s(literal 1 binary64) re)))
(-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))
(-.f64 re #s(literal -1 binary64))
(+.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 re)))
(+.f64 #s(literal 1 binary64) re)
(+.f64 re #s(literal 1 binary64))
#s(literal -1 binary64)
#s(approx (cos im) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) im #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im)))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64) #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) im #s(literal -1 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64) #s(literal -1 binary64)) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) im) #s(literal 1 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) im) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/4 binary64) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) im) #s(literal -1 binary64)))))
(neg.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))))
(neg.f64 (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (neg.f64 im)) (neg.f64 im) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (fabs.f64 im)) (fabs.f64 im) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) im) im #s(literal 1 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 im (*.f64 #s(literal -1/2 binary64) im) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) im) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) im) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im))
(*.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)))
(*.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)))
(*.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 im)))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 im im)
(pow.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 (fabs.f64 im) #s(literal 2 binary64))
(pow.f64 im #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 im) im))
(sqrt.f64 (*.f64 (*.f64 im im) (*.f64 im im)))
(fabs.f64 (*.f64 (neg.f64 im) im))
(fabs.f64 (*.f64 im im))
#s(literal -1/2 binary64)
(*.f64 #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im))) (exp.f64 re))
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im))))
(fma.f64 (cosh.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im))) (*.f64 (sinh.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im)))))
(fma.f64 #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im))) (cosh.f64 re) (*.f64 #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im))) (sinh.f64 re)))
(+.f64 (*.f64 #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im))) (cosh.f64 re)) (*.f64 #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im))) (sinh.f64 re)))
(+.f64 (*.f64 (cosh.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im)))) (*.f64 (sinh.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im)))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (pow.f64 (sinh.f64 re) #s(literal 3 binary64))) (fma.f64 (cosh.f64 re) (cosh.f64 re) (-.f64 (*.f64 (sinh.f64 re) (sinh.f64 re)) (*.f64 (cosh.f64 re) (sinh.f64 re)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 re)))
(sqrt.f64 (exp.f64 (+.f64 re re)))
(-.f64 (cosh.f64 re) (sinh.f64 (*.f64 #s(literal -1 binary64) re)))
(-.f64 (cosh.f64 re) (sinh.f64 (*.f64 re #s(literal -1 binary64))))
(-.f64 (cosh.f64 re) (sinh.f64 (neg.f64 re)))
(fabs.f64 (neg.f64 (exp.f64 re)))
(fabs.f64 (exp.f64 re))
(exp.f64 re)
(+.f64 (sinh.f64 re) (cosh.f64 re))
(+.f64 (cosh.f64 re) (sinh.f64 re))
#s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im)))
#s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im))
(*.f64 (*.f64 #s(literal -1/2 binary64) (neg.f64 im)) (neg.f64 im))
(*.f64 (*.f64 #s(literal -1/2 binary64) (fabs.f64 im)) (fabs.f64 im))
(*.f64 (*.f64 #s(literal -1/2 binary64) im) im)
(*.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal -1/2 binary64)))
(*.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) #s(literal -1/2 binary64)))
(*.f64 (*.f64 im im) #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) (*.f64 im im))
(*.f64 im (*.f64 #s(literal -1/2 binary64) im))
(neg.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)))
(*.f64 #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(approx (exp re) (-.f64 re #s(literal -1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 1 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal -1 binary64)))))
(neg.f64 (-.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im)) #s(literal 1 binary64)))
(neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im))))
(neg.f64 (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im)))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (neg.f64 im)) (neg.f64 im) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (fabs.f64 im)) (fabs.f64 im) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im #s(literal 1 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))
(fma.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 im (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im)))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64))) (-.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/2 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal 1/2 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/8 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/2 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/8 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal 1/2 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)))))
(neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)))
(fma.f64 (*.f64 #s(literal 1/24 binary64) (neg.f64 im)) (neg.f64 im) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/24 binary64) (fabs.f64 im)) (fabs.f64 im) #s(literal -1/2 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal 1/24 binary64)) #s(literal -1/2 binary64))
(fma.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) #s(literal 1/24 binary64)) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64))
(fma.f64 im (*.f64 #s(literal 1/24 binary64) im) #s(literal -1/2 binary64))
(-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal 1/2 binary64))
(-.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 1/24 binary64) im)) im))
(-.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1/24 binary64)))
(-.f64 #s(literal -1/2 binary64) (*.f64 #s(literal -1/24 binary64) (*.f64 im im)))
(-.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 im) (*.f64 #s(literal 1/24 binary64) im)))
(-.f64 #s(literal -1/2 binary64) (neg.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)))
(+.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/2 binary64))
(+.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im))
#s(literal 1/24 binary64)
(*.f64 #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (exp.f64 re))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(fma.f64 (cosh.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (*.f64 (sinh.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(fma.f64 #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cosh.f64 re) (*.f64 #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (sinh.f64 re)))
(+.f64 (*.f64 #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (cosh.f64 re)) (*.f64 #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))) (sinh.f64 re)))
(+.f64 (*.f64 (cosh.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))) (*.f64 (sinh.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
#s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 1 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal -1 binary64)))))
(neg.f64 (-.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im)) #s(literal 1 binary64)))
(neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im))))
(neg.f64 (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im)))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (neg.f64 im)) (neg.f64 im) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (fabs.f64 im)) (fabs.f64 im) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im #s(literal 1 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))
(fma.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) #s(literal 1 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 im (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im)))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) im) im))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64))) (-.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/2 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) #s(literal -1/4 binary64)) (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal 1/2 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/8 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/2 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/8 binary64)) (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal 1/2 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/576 binary64)) (*.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)))))
(neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)))
(fma.f64 (*.f64 #s(literal 1/24 binary64) (neg.f64 im)) (neg.f64 im) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/24 binary64) (fabs.f64 im)) (fabs.f64 im) #s(literal -1/2 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal 1/24 binary64)) #s(literal -1/2 binary64))
(fma.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) #s(literal 1/24 binary64)) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64))
(fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))
(fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64))
(fma.f64 im (*.f64 #s(literal 1/24 binary64) im) #s(literal -1/2 binary64))
(-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal 1/2 binary64))
(-.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 1/24 binary64) im)) im))
(-.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1/24 binary64)))
(-.f64 #s(literal -1/2 binary64) (*.f64 #s(literal -1/24 binary64) (*.f64 im im)))
(-.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 im) (*.f64 #s(literal 1/24 binary64) im)))
(-.f64 #s(literal -1/2 binary64) (neg.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)))
(+.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) im) im) #s(literal -1/2 binary64))
(+.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im))
(*.f64 #s(literal 1/24 binary64) im)
(*.f64 im #s(literal 1/24 binary64))
#s(approx (* (exp re) (cos im)) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im)))
#s(approx (* (exp re) (cos im)) (fma.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 im) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re) re)))
#s(approx (exp re) #s(literal 1 binary64))
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
#s(approx (+ (* 1/2 re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))
#s(approx re re)
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (exp.f64 re)))
#s(approx (exp re) (exp.f64 re))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 re re)) (/.f64 #s(literal -1 binary64) re)) #s(literal -1/2 binary64)) re) re))
#s(approx (+ (* 1/2 re) 1) (*.f64 #s(literal 1/2 binary64) re))
#s(approx (+ (* 1/2 re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))
#s(approx (- re -1) (-.f64 re #s(literal -1 binary64)))
#s(approx (* (exp re) (cos im)) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) im #s(literal 1 binary64)) (exp.f64 re)))
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 im im) (*.f64 (exp.f64 re) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64))) (exp.f64 re)))
#s(approx (* (exp re) (cos im)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) im #s(literal 1 binary64)) (exp.f64 re) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (exp.f64 re) (fma.f64 #s(literal -1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64))) im) im) im) im)))
#s(approx (cos im) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) im #s(literal 1 binary64)))
#s(approx (cos im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (cos im) (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal -1/2 binary64)) im) im #s(literal 1 binary64)))
#s(approx im im)
#s(approx (* im im) (*.f64 im im))
#s(approx (* (* im im) -1/2) (*.f64 (*.f64 #s(literal -1/2 binary64) im) im))
#s(approx (+ (* 1/24 (* im im)) -1/2) #s(literal -1/2 binary64))
#s(approx (+ (* 1/24 (* im im)) -1/2) (fma.f64 (*.f64 im im) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))
#s(approx (* 1/24 im) (*.f64 #s(literal 1/24 binary64) im))
#s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/2 binary64)) im) im))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/24 binary64)))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) (*.f64 (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 im im))) (pow.f64 im #s(literal 4 binary64))))
#s(approx (+ (* (+ (* 1/24 (* im im)) -1/2) (* im im)) 1) (*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal -1/24 binary64)) (/.f64 #s(literal 1/2 binary64) (*.f64 im im))) (pow.f64 im #s(literal 4 binary64))))
#s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im))
#s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 im im))) im) im))

eval45.0ms (1.3%)

Memory
7.7MiB live, 60.9MiB allocated; 16ms collecting garbage
Compiler

Compiled 2 591 to 1 265 computations (51.2% saved)

prune20.0ms (0.6%)

Memory
-15.1MiB live, 32.0MiB allocated; 4ms collecting garbage
Pruning

19 alts after pruning (11 fresh and 8 done)

PrunedKeptTotal
New3196325
Fresh055
Picked235
Done055
Total32119340
Accuracy
100.0%
Counts
340 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
60.9%
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
61.9%
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 im im) #s(literal 1 binary64))))
24.8%
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
63.3%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
36.8%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
36.2%
(*.f64 #s(approx (exp re) (/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
33.8%
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
30.1%
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
33.9%
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
30.1%
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
33.9%
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im) #s(literal 1 binary64))))
21.3%
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/2 binary64)) im) im))))
63.3%
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im)))
62.4%
#s(approx (* (exp re) (cos im)) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
53.2%
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
30.8%
#s(approx (* (exp re) (cos im)) (sin.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64)))))
52.5%
#s(approx (* (exp re) (cos im)) (cos.f64 im))
30.1%
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64))))
Compiler

Compiled 463 to 450 computations (2.8% saved)

series43.0ms (1.2%)

Memory
-10.8MiB live, 34.6MiB allocated; 4ms collecting garbage
Counts
41 → 102
Calls
Call 1
Inputs
#s(approx (* (exp re) (cos im)) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)))
(-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))))
(pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64))
(*.f64 (cos.f64 im) re)
(cos.f64 im)
im
re
#s(literal 2 binary64)
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))
(cos.f64 (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64))))
#s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64)))
(+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re)
(*.f64 (*.f64 im im) #s(literal -1/2 binary64))
(*.f64 im im)
#s(literal -1/2 binary64)
(-.f64 re #s(literal -1 binary64))
#s(literal -1 binary64)
#s(literal 1 binary64)
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re)))
(-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) re)
(/.f64 #s(literal -1 binary64) re)
#s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
(*.f64 #s(approx (exp re) (/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (exp re) (/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64))))
(/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))
(fma.f64 re re #s(literal -1 binary64))
(-.f64 re #s(literal 1 binary64))
Outputs
#s(approx (* (exp re) (cos im)) #s(hole binary64 (cos im)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (cos im)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* 1/2 (* re (cos im))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* re (+ (* 1/6 (* re (cos im))) (* 1/2 (cos im)))))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (+ (* 1/2 (/ (cos (* 2 im)) (cos im))) (+ (* 1/2 (/ 1 (cos im))) (/ (* re (+ 1/2 (* 1/2 (cos (* 2 im))))) (cos im))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (+ (* 1/2 (/ (cos (* 2 im)) (cos im))) (+ (* re (- (* re (- (* -1 (cos im)) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im))))) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im))))) (* 1/2 (/ 1 (cos im)))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (+ (* 1/2 (/ (cos (* 2 im)) (cos im))) (+ (* re (- (* re (- (+ (* -1 (cos im)) (* re (- (* -1 (cos im)) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im)))))) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im))))) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im))))) (* 1/2 (/ 1 (cos im)))))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (* -1 (+ 1/2 (* 1/2 (cos (* 2 im)))))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (- (* (pow re 2) (pow (cos im) 2)) (+ 1/2 (* 1/2 (cos (* 2 im)))))))
#s(approx (pow (* (cos im) re) 2) #s(hole binary64 (* (pow re 2) (pow (cos im) 2))))
#s(approx (* (cos im) re) #s(hole binary64 (* re (cos im))))
#s(approx re #s(hole binary64 re))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (* -1 (cos im))))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (- (* re (cos im)) (cos im))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (+ 1 (* -1/2 (pow im 2)))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (+ 1 (+ (* -1/2 (pow im 2)) (* re (+ 1 (* -1/2 (pow im 2))))))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (* -1/2 (pow im 2))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (+ (* -1/2 (pow im 2)) (* re (+ 1 (* -1/2 (pow im 2)))))))
#s(approx (- re -1) #s(hole binary64 1))
#s(approx (- re -1) #s(hole binary64 (+ 1 re)))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* 1/2 re))))))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))))
#s(approx (* (/ -1 re) re) #s(hole binary64 -1))
#s(approx (/ -1 re) #s(hole binary64 (/ -1 re)))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (+ 1 (* 1/2 re))))
#s(approx (+ (* re re) -1) #s(hole binary64 (- (pow re 2) 1)))
#s(approx (- re 1) #s(hole binary64 (- re 1)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (* (cos im) (exp re))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* re (+ (cos im) (/ (cos im) re)))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* re (- (+ (cos im) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (* (pow re 2) (cos im))))) (+ (* -1 (/ (cos im) re)) (* -1 (/ (cos im) (pow re 2))))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* re (- (+ (cos im) (+ (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (* (pow re 2) (cos im)))) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (* (pow re 3) (cos im)))))) (+ (* -1 (/ (cos im) re)) (+ (* -1 (/ (cos im) (pow re 2))) (* -1 (/ (cos im) (pow re 3)))))))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (* (pow re 2) (+ (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (pow re 2))) (pow (cos im) 2)))))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (* re (+ (cos im) (* -1 (/ (cos im) re))))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* re (+ 1 (* -1/2 (pow im 2))))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* re (+ 1 (+ (* -1/2 (/ (pow im 2) re)) (+ (* -1/2 (pow im 2)) (/ 1 re)))))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (* re (+ 1 (+ (* -1/2 (/ (pow im 2) re)) (* -1/2 (pow im 2)))))))
#s(approx (- re -1) #s(hole binary64 (* re (+ 1 (/ 1 re)))))
#s(approx (exp re) #s(hole binary64 (exp re)))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* 1/2 (pow re 2))))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* (pow re 2) (+ 1/2 (/ 1 re)))))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* (pow re 2) (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))))))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* 1/2 re)))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* re (+ 1/2 (/ 1 re)))))
#s(approx (+ (* re re) -1) #s(hole binary64 (pow re 2)))
#s(approx (+ (* re re) -1) #s(hole binary64 (* (pow re 2) (- 1 (/ 1 (pow re 2))))))
#s(approx (- re 1) #s(hole binary64 (* re (- 1 (/ 1 re)))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* -1 (* re (+ (* -1 (cos im)) (* -1 (/ (cos im) re)))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* -1 (* re (+ (* -1 (cos im)) (* -1 (/ (- (* -1 (/ (- (+ (* 1/2 (/ 1 (cos im))) (* 1/2 (/ (cos (* 2 im)) (cos im)))) (cos im)) re)) (* -1 (cos im))) re)))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* -1 (* re (+ (* -1 (cos im)) (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (- (cos im) (+ (* 1/2 (/ 1 (cos im))) (* 1/2 (/ (cos (* 2 im)) (cos im))))) re)) (+ (* 1/2 (/ 1 (cos im))) (* 1/2 (/ (cos (* 2 im)) (cos im))))) (cos im)) re)) (* -1 (cos im))) re)))))))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (* -1 (* re (+ (* -1 (cos im)) (/ (cos im) re))))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* -1 (* re (- (* 1/2 (pow im 2)) 1)))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* -1 (* re (- (+ (* -1 (/ (+ 1 (* -1/2 (pow im 2))) re)) (* 1/2 (pow im 2))) 1)))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (* -1 (* re (- (+ (* 1/2 (/ (pow im 2) re)) (* 1/2 (pow im 2))) 1)))))
#s(approx (- re 1) #s(hole binary64 (* -1 (* re (- (/ 1 re) 1)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* -1/2 (* (pow im 2) (exp re))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* 1/24 (* (pow im 2) (exp re))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (exp re))) (* 1/24 (exp re)))))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (/ (- (pow re 2) 1) (- re 1))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (- (+ (* (pow im 2) (- (+ (* -1 (/ (pow re 2) (- re 1))) (/ 1 (- re 1))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (/ (pow re 2) (- re 1))) (/ 1 (- re 1)))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (- (+ (* (pow im 2) (- (+ (* -1 (/ (pow re 2) (- re 1))) (+ (* (pow im 2) (- (* 1/3 (/ (pow re 2) (- re 1))) (+ (* 1/3 (/ 1 (- re 1))) (+ (/ (* (+ 1/2 (* -1/2 re)) (- (+ (* -1 (/ (pow re 2) (- re 1))) (/ 1 (- re 1))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (- re 1)) (/ (* (- (* 1/24 re) 1/24) (- (pow re 2) 1)) (pow (- re 1) 2)))))) (/ 1 (- re 1)))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (/ (pow re 2) (- re 1))) (/ 1 (- re 1)))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (- (+ (* (pow im 2) (- (+ (* -1 (/ (pow re 2) (- re 1))) (+ (* (pow im 2) (- (+ (* 1/3 (/ (pow re 2) (- re 1))) (* (pow im 2) (- (+ (* -2/45 (/ (pow re 2) (- re 1))) (* 2/45 (/ 1 (- re 1)))) (+ (/ (* (+ 1/720 (* -1/720 re)) (- (pow re 2) 1)) (pow (- re 1) 2)) (+ (/ (* (+ 1/2 (* -1/2 re)) (- (* 1/3 (/ (pow re 2) (- re 1))) (+ (* 1/3 (/ 1 (- re 1))) (+ (/ (* (+ 1/2 (* -1/2 re)) (- (+ (* -1 (/ (pow re 2) (- re 1))) (/ 1 (- re 1))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (- re 1)) (/ (* (- (* 1/24 re) 1/24) (- (pow re 2) 1)) (pow (- re 1) 2)))))) (- re 1)) (/ (* (- (* 1/24 re) 1/24) (- (+ (* -1 (/ (pow re 2) (- re 1))) (/ 1 (- re 1))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (- re 1))))))) (+ (* 1/3 (/ 1 (- re 1))) (+ (/ (* (+ 1/2 (* -1/2 re)) (- (+ (* -1 (/ (pow re 2) (- re 1))) (/ 1 (- re 1))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (- re 1)) (/ (* (- (* 1/24 re) 1/24) (- (pow re 2) 1)) (pow (- re 1) 2)))))) (/ 1 (- re 1)))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (/ (pow re 2) (- re 1))) (/ 1 (- re 1)))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (- (+ (* (pow im 2) (+ 1 (* -1 (pow re 2)))) (pow re 2)) 1)))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (- (+ (* (pow im 2) (+ 1 (+ (* -1 (pow re 2)) (* (pow im 2) (- (* 1/3 (pow re 2)) 1/3))))) (pow re 2)) 1)))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (- (+ (* (pow im 2) (+ 1 (+ (* -1 (pow re 2)) (* (pow im 2) (- (+ (* 1/3 (pow re 2)) (* (pow im 2) (+ 2/45 (* -2/45 (pow re 2))))) 1/3))))) (pow re 2)) 1)))
#s(approx (pow (* (cos im) re) 2) #s(hole binary64 (+ (* -1 (* (pow im 2) (pow re 2))) (pow re 2))))
#s(approx (pow (* (cos im) re) 2) #s(hole binary64 (+ (* (pow im 2) (+ (* -1 (pow re 2)) (* 1/3 (* (pow im 2) (pow re 2))))) (pow re 2))))
#s(approx (pow (* (cos im) re) 2) #s(hole binary64 (+ (* (pow im 2) (+ (* -1 (pow re 2)) (* (pow im 2) (+ (* -2/45 (* (pow im 2) (pow re 2))) (* 1/3 (pow re 2)))))) (pow re 2))))
#s(approx (* (cos im) re) #s(hole binary64 (+ re (* -1/2 (* (pow im 2) re)))))
#s(approx (* (cos im) re) #s(hole binary64 (+ re (* (pow im 2) (+ (* -1/2 re) (* 1/24 (* (pow im 2) re)))))))
#s(approx (* (cos im) re) #s(hole binary64 (+ re (* (pow im 2) (+ (* -1/2 re) (* (pow im 2) (+ (* -1/720 (* (pow im 2) re)) (* 1/24 re))))))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 1/24 (pow im 2)) 1/2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/24 (* -1/720 (pow im 2)))) 1/2)))))
#s(approx im #s(hole binary64 im))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) #s(hole binary64 (+ 1 (* -1 (pow im 2)))))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 1/3 (pow im 2)) 1)))))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/3 (* -2/45 (pow im 2)))) 1)))))
#s(approx (* 1/2 (cos (* 2 im))) #s(hole binary64 1/2))
#s(approx (* 1/2 (cos (* 2 im))) #s(hole binary64 (+ 1/2 (* -1 (pow im 2)))))
#s(approx (* 1/2 (cos (* 2 im))) #s(hole binary64 (+ 1/2 (* (pow im 2) (- (* 1/3 (pow im 2)) 1)))))
#s(approx (* 1/2 (cos (* 2 im))) #s(hole binary64 (+ 1/2 (* (pow im 2) (- (* (pow im 2) (+ 1/3 (* -2/45 (pow im 2)))) 1)))))
#s(approx (cos (* 2 im)) #s(hole binary64 (+ 1 (* -2 (pow im 2)))))
#s(approx (cos (* 2 im)) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 2/3 (pow im 2)) 2)))))
#s(approx (cos (* 2 im)) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 2/3 (* -4/45 (pow im 2)))) 2)))))
#s(approx (* 2 im) #s(hole binary64 (* 2 im)))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (- (+ re (* (pow im 2) (+ 1/2 (* -1/2 re)))) 1)))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (- (+ re (* (pow im 2) (+ 1/2 (+ (* -1/2 re) (* (pow im 2) (- (* 1/24 re) 1/24)))))) 1)))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (- (+ re (* (pow im 2) (+ 1/2 (+ (* -1/2 re) (* (pow im 2) (- (+ (* 1/24 re) (* (pow im 2) (+ 1/720 (* -1/720 re)))) 1/24)))))) 1)))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* -1/2 (* (pow im 2) (+ 1 re)))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* (pow im 2) (+ (* -1/2 (+ 1 re)) (* 1/24 (* (pow im 2) (+ 1 re)))))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* (pow im 2) (+ (* -1/2 (+ 1 re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (+ 1 re))) (* 1/24 (+ 1 re))))))))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (+ re (* -1/2 (* (pow im 2) (+ 1 re))))))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (/ (- (* (pow re 2) (pow (cos im) 2)) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* re (cos im)) (cos im)))))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) #s(hole binary64 (+ 1/2 (* 1/2 (cos (* 2 im))))))
#s(approx (* 1/2 (cos (* 2 im))) #s(hole binary64 (* 1/2 (cos (* 2 im)))))
#s(approx (cos (* 2 im)) #s(hole binary64 (cos (* 2 im))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (* (cos im) (+ 1 re))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* -1/2 (* (pow im 2) (+ 1 re)))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* (pow im 2) (+ (* -1/2 (+ 1 re)) (+ (/ 1 (pow im 2)) (/ re (pow im 2)))))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (* (pow im 2) (+ (* -1/2 (+ 1 re)) (/ re (pow im 2))))))
#s(approx (+ (* (* im im) -1/2) 1) #s(hole binary64 (* (pow im 2) (- (/ 1 (pow im 2)) 1/2))))
Calls

6 calls:

TimeVariablePointExpression
19.0ms
im
@-inf
((* (exp re) (cos im)) (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (pow (* (cos im) re) 2) (* (cos im) re) (cos im) im re 2 (+ 1/2 (* 1/2 (cos (* 2 im)))) 1/2 (* 1/2 (cos (* 2 im))) (cos (* 2 im)) (* 2 im) (- (* (cos im) re) (cos im)) (* (exp re) (cos im)) (* (cos im) (- re -1)) (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (+ (* (* (* im im) -1/2) (- re -1)) re) (* (* im im) -1/2) (* im im) -1/2 (- re -1) -1 1 (* (exp re) (cos im)) (exp re) (- re (* (/ -1 re) re)) (* (/ -1 re) re) (/ -1 re) (cos im) (+ (* (* im im) -1/2) 1) (* (exp re) (cos im)) (exp re) (+ (* (+ (* 1/2 re) 1) re) 1) (+ (* 1/2 re) 1) (* (exp re) (cos im)) (exp re) (/ (+ (* re re) -1) (- re 1)) (+ (* re re) -1) (- re 1))
6.0ms
re
@inf
((* (exp re) (cos im)) (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (pow (* (cos im) re) 2) (* (cos im) re) (cos im) im re 2 (+ 1/2 (* 1/2 (cos (* 2 im)))) 1/2 (* 1/2 (cos (* 2 im))) (cos (* 2 im)) (* 2 im) (- (* (cos im) re) (cos im)) (* (exp re) (cos im)) (* (cos im) (- re -1)) (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (+ (* (* (* im im) -1/2) (- re -1)) re) (* (* im im) -1/2) (* im im) -1/2 (- re -1) -1 1 (* (exp re) (cos im)) (exp re) (- re (* (/ -1 re) re)) (* (/ -1 re) re) (/ -1 re) (cos im) (+ (* (* im im) -1/2) 1) (* (exp re) (cos im)) (exp re) (+ (* (+ (* 1/2 re) 1) re) 1) (+ (* 1/2 re) 1) (* (exp re) (cos im)) (exp re) (/ (+ (* re re) -1) (- re 1)) (+ (* re re) -1) (- re 1))
4.0ms
im
@0
((* (exp re) (cos im)) (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (pow (* (cos im) re) 2) (* (cos im) re) (cos im) im re 2 (+ 1/2 (* 1/2 (cos (* 2 im)))) 1/2 (* 1/2 (cos (* 2 im))) (cos (* 2 im)) (* 2 im) (- (* (cos im) re) (cos im)) (* (exp re) (cos im)) (* (cos im) (- re -1)) (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (+ (* (* (* im im) -1/2) (- re -1)) re) (* (* im im) -1/2) (* im im) -1/2 (- re -1) -1 1 (* (exp re) (cos im)) (exp re) (- re (* (/ -1 re) re)) (* (/ -1 re) re) (/ -1 re) (cos im) (+ (* (* im im) -1/2) 1) (* (exp re) (cos im)) (exp re) (+ (* (+ (* 1/2 re) 1) re) 1) (+ (* 1/2 re) 1) (* (exp re) (cos im)) (exp re) (/ (+ (* re re) -1) (- re 1)) (+ (* re re) -1) (- re 1))
4.0ms
re
@0
((* (exp re) (cos im)) (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (pow (* (cos im) re) 2) (* (cos im) re) (cos im) im re 2 (+ 1/2 (* 1/2 (cos (* 2 im)))) 1/2 (* 1/2 (cos (* 2 im))) (cos (* 2 im)) (* 2 im) (- (* (cos im) re) (cos im)) (* (exp re) (cos im)) (* (cos im) (- re -1)) (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (+ (* (* (* im im) -1/2) (- re -1)) re) (* (* im im) -1/2) (* im im) -1/2 (- re -1) -1 1 (* (exp re) (cos im)) (exp re) (- re (* (/ -1 re) re)) (* (/ -1 re) re) (/ -1 re) (cos im) (+ (* (* im im) -1/2) 1) (* (exp re) (cos im)) (exp re) (+ (* (+ (* 1/2 re) 1) re) 1) (+ (* 1/2 re) 1) (* (exp re) (cos im)) (exp re) (/ (+ (* re re) -1) (- re 1)) (+ (* re re) -1) (- re 1))
4.0ms
im
@inf
((* (exp re) (cos im)) (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (pow (* (cos im) re) 2) (* (cos im) re) (cos im) im re 2 (+ 1/2 (* 1/2 (cos (* 2 im)))) 1/2 (* 1/2 (cos (* 2 im))) (cos (* 2 im)) (* 2 im) (- (* (cos im) re) (cos im)) (* (exp re) (cos im)) (* (cos im) (- re -1)) (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (+ (* (* (* im im) -1/2) (- re -1)) re) (* (* im im) -1/2) (* im im) -1/2 (- re -1) -1 1 (* (exp re) (cos im)) (exp re) (- re (* (/ -1 re) re)) (* (/ -1 re) re) (/ -1 re) (cos im) (+ (* (* im im) -1/2) 1) (* (exp re) (cos im)) (exp re) (+ (* (+ (* 1/2 re) 1) re) 1) (+ (* 1/2 re) 1) (* (exp re) (cos im)) (exp re) (/ (+ (* re re) -1) (- re 1)) (+ (* re re) -1) (- re 1))

rewrite236.0ms (6.6%)

Memory
31.8MiB live, 162.3MiB allocated; 30ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05513353
05982993
144352945
080882562
1221222562
Stop Event
iter-limit
node-limit
iter-limit
Counts
143 → 415
Calls
Call 1
Inputs
#s(approx (* (exp re) (cos im)) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)))
(-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))))
(pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64))
(*.f64 (cos.f64 im) re)
(cos.f64 im)
im
re
#s(literal 2 binary64)
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im)))
(cos.f64 (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64))))
#s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64)))
(+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re)
(*.f64 (*.f64 im im) #s(literal -1/2 binary64))
(*.f64 im im)
#s(literal -1/2 binary64)
(-.f64 re #s(literal -1 binary64))
#s(literal -1 binary64)
#s(literal 1 binary64)
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re)))
(-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) re)
(/.f64 #s(literal -1 binary64) re)
#s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
(*.f64 #s(approx (exp re) (/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (exp re) (/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64))))
(/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))
(fma.f64 re re #s(literal -1 binary64))
(-.f64 re #s(literal 1 binary64))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (cos im)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (cos im)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* 1/2 (* re (cos im))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (cos im) (* re (+ (cos im) (* re (+ (* 1/6 (* re (cos im))) (* 1/2 (cos im)))))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (+ (* 1/2 (/ (cos (* 2 im)) (cos im))) (+ (* 1/2 (/ 1 (cos im))) (/ (* re (+ 1/2 (* 1/2 (cos (* 2 im))))) (cos im))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (+ (* 1/2 (/ (cos (* 2 im)) (cos im))) (+ (* re (- (* re (- (* -1 (cos im)) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im))))) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im))))) (* 1/2 (/ 1 (cos im)))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (+ (* 1/2 (/ (cos (* 2 im)) (cos im))) (+ (* re (- (* re (- (+ (* -1 (cos im)) (* re (- (* -1 (cos im)) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im)))))) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im))))) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (cos im))))) (* 1/2 (/ 1 (cos im)))))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (* -1 (+ 1/2 (* 1/2 (cos (* 2 im)))))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (- (* (pow re 2) (pow (cos im) 2)) (+ 1/2 (* 1/2 (cos (* 2 im)))))))
#s(approx (pow (* (cos im) re) 2) #s(hole binary64 (* (pow re 2) (pow (cos im) 2))))
#s(approx (* (cos im) re) #s(hole binary64 (* re (cos im))))
#s(approx re #s(hole binary64 re))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (* -1 (cos im))))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (- (* re (cos im)) (cos im))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (+ 1 (* -1/2 (pow im 2)))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (+ 1 (+ (* -1/2 (pow im 2)) (* re (+ 1 (* -1/2 (pow im 2))))))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (* -1/2 (pow im 2))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (+ (* -1/2 (pow im 2)) (* re (+ 1 (* -1/2 (pow im 2)))))))
#s(approx (- re -1) #s(hole binary64 1))
#s(approx (- re -1) #s(hole binary64 (+ 1 re)))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* 1/2 re))))))
#s(approx (exp re) #s(hole binary64 (+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))))
#s(approx (* (/ -1 re) re) #s(hole binary64 -1))
#s(approx (/ -1 re) #s(hole binary64 (/ -1 re)))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (+ 1 (* 1/2 re))))
#s(approx (+ (* re re) -1) #s(hole binary64 (- (pow re 2) 1)))
#s(approx (- re 1) #s(hole binary64 (- re 1)))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (* (cos im) (exp re))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* re (+ (cos im) (/ (cos im) re)))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* re (- (+ (cos im) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (* (pow re 2) (cos im))))) (+ (* -1 (/ (cos im) re)) (* -1 (/ (cos im) (pow re 2))))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* re (- (+ (cos im) (+ (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (* (pow re 2) (cos im)))) (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (* (pow re 3) (cos im)))))) (+ (* -1 (/ (cos im) re)) (+ (* -1 (/ (cos im) (pow re 2))) (* -1 (/ (cos im) (pow re 3)))))))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (* (pow re 2) (+ (* -1 (/ (+ 1/2 (* 1/2 (cos (* 2 im)))) (pow re 2))) (pow (cos im) 2)))))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (* re (+ (cos im) (* -1 (/ (cos im) re))))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* re (+ 1 (* -1/2 (pow im 2))))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* re (+ 1 (+ (* -1/2 (/ (pow im 2) re)) (+ (* -1/2 (pow im 2)) (/ 1 re)))))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (* re (+ 1 (+ (* -1/2 (/ (pow im 2) re)) (* -1/2 (pow im 2)))))))
#s(approx (- re -1) #s(hole binary64 (* re (+ 1 (/ 1 re)))))
#s(approx (exp re) #s(hole binary64 (exp re)))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* 1/2 (pow re 2))))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* (pow re 2) (+ 1/2 (/ 1 re)))))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) #s(hole binary64 (* (pow re 2) (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))))))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* 1/2 re)))
#s(approx (+ (* 1/2 re) 1) #s(hole binary64 (* re (+ 1/2 (/ 1 re)))))
#s(approx (+ (* re re) -1) #s(hole binary64 (pow re 2)))
#s(approx (+ (* re re) -1) #s(hole binary64 (* (pow re 2) (- 1 (/ 1 (pow re 2))))))
#s(approx (- re 1) #s(hole binary64 (* re (- 1 (/ 1 re)))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* -1 (* re (+ (* -1 (cos im)) (* -1 (/ (cos im) re)))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* -1 (* re (+ (* -1 (cos im)) (* -1 (/ (- (* -1 (/ (- (+ (* 1/2 (/ 1 (cos im))) (* 1/2 (/ (cos (* 2 im)) (cos im)))) (cos im)) re)) (* -1 (cos im))) re)))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (* -1 (* re (+ (* -1 (cos im)) (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (- (cos im) (+ (* 1/2 (/ 1 (cos im))) (* 1/2 (/ (cos (* 2 im)) (cos im))))) re)) (+ (* 1/2 (/ 1 (cos im))) (* 1/2 (/ (cos (* 2 im)) (cos im))))) (cos im)) re)) (* -1 (cos im))) re)))))))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (* -1 (* re (+ (* -1 (cos im)) (/ (cos im) re))))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* -1 (* re (- (* 1/2 (pow im 2)) 1)))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* -1 (* re (- (+ (* -1 (/ (+ 1 (* -1/2 (pow im 2))) re)) (* 1/2 (pow im 2))) 1)))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (* -1 (* re (- (+ (* 1/2 (/ (pow im 2) re)) (* 1/2 (pow im 2))) 1)))))
#s(approx (- re 1) #s(hole binary64 (* -1 (* re (- (/ 1 re) 1)))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* -1/2 (* (pow im 2) (exp re))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* 1/24 (* (pow im 2) (exp re))))))))
#s(approx (* (exp re) (cos im)) #s(hole binary64 (+ (exp re) (* (pow im 2) (+ (* -1/2 (exp re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (exp re))) (* 1/24 (exp re)))))))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (/ (- (pow re 2) 1) (- re 1))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (- (+ (* (pow im 2) (- (+ (* -1 (/ (pow re 2) (- re 1))) (/ 1 (- re 1))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (/ (pow re 2) (- re 1))) (/ 1 (- re 1)))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (- (+ (* (pow im 2) (- (+ (* -1 (/ (pow re 2) (- re 1))) (+ (* (pow im 2) (- (* 1/3 (/ (pow re 2) (- re 1))) (+ (* 1/3 (/ 1 (- re 1))) (+ (/ (* (+ 1/2 (* -1/2 re)) (- (+ (* -1 (/ (pow re 2) (- re 1))) (/ 1 (- re 1))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (- re 1)) (/ (* (- (* 1/24 re) 1/24) (- (pow re 2) 1)) (pow (- re 1) 2)))))) (/ 1 (- re 1)))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (/ (pow re 2) (- re 1))) (/ 1 (- re 1)))))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (- (+ (* (pow im 2) (- (+ (* -1 (/ (pow re 2) (- re 1))) (+ (* (pow im 2) (- (+ (* 1/3 (/ (pow re 2) (- re 1))) (* (pow im 2) (- (+ (* -2/45 (/ (pow re 2) (- re 1))) (* 2/45 (/ 1 (- re 1)))) (+ (/ (* (+ 1/720 (* -1/720 re)) (- (pow re 2) 1)) (pow (- re 1) 2)) (+ (/ (* (+ 1/2 (* -1/2 re)) (- (* 1/3 (/ (pow re 2) (- re 1))) (+ (* 1/3 (/ 1 (- re 1))) (+ (/ (* (+ 1/2 (* -1/2 re)) (- (+ (* -1 (/ (pow re 2) (- re 1))) (/ 1 (- re 1))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (- re 1)) (/ (* (- (* 1/24 re) 1/24) (- (pow re 2) 1)) (pow (- re 1) 2)))))) (- re 1)) (/ (* (- (* 1/24 re) 1/24) (- (+ (* -1 (/ (pow re 2) (- re 1))) (/ 1 (- re 1))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (- re 1))))))) (+ (* 1/3 (/ 1 (- re 1))) (+ (/ (* (+ 1/2 (* -1/2 re)) (- (+ (* -1 (/ (pow re 2) (- re 1))) (/ 1 (- re 1))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (- re 1)) (/ (* (- (* 1/24 re) 1/24) (- (pow re 2) 1)) (pow (- re 1) 2)))))) (/ 1 (- re 1)))) (/ (* (+ 1/2 (* -1/2 re)) (- (pow re 2) 1)) (pow (- re 1) 2)))) (/ (pow re 2) (- re 1))) (/ 1 (- re 1)))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (- (+ (* (pow im 2) (+ 1 (* -1 (pow re 2)))) (pow re 2)) 1)))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (- (+ (* (pow im 2) (+ 1 (+ (* -1 (pow re 2)) (* (pow im 2) (- (* 1/3 (pow re 2)) 1/3))))) (pow re 2)) 1)))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) #s(hole binary64 (- (+ (* (pow im 2) (+ 1 (+ (* -1 (pow re 2)) (* (pow im 2) (- (+ (* 1/3 (pow re 2)) (* (pow im 2) (+ 2/45 (* -2/45 (pow re 2))))) 1/3))))) (pow re 2)) 1)))
#s(approx (pow (* (cos im) re) 2) #s(hole binary64 (+ (* -1 (* (pow im 2) (pow re 2))) (pow re 2))))
#s(approx (pow (* (cos im) re) 2) #s(hole binary64 (+ (* (pow im 2) (+ (* -1 (pow re 2)) (* 1/3 (* (pow im 2) (pow re 2))))) (pow re 2))))
#s(approx (pow (* (cos im) re) 2) #s(hole binary64 (+ (* (pow im 2) (+ (* -1 (pow re 2)) (* (pow im 2) (+ (* -2/45 (* (pow im 2) (pow re 2))) (* 1/3 (pow re 2)))))) (pow re 2))))
#s(approx (* (cos im) re) #s(hole binary64 (+ re (* -1/2 (* (pow im 2) re)))))
#s(approx (* (cos im) re) #s(hole binary64 (+ re (* (pow im 2) (+ (* -1/2 re) (* 1/24 (* (pow im 2) re)))))))
#s(approx (* (cos im) re) #s(hole binary64 (+ re (* (pow im 2) (+ (* -1/2 re) (* (pow im 2) (+ (* -1/720 (* (pow im 2) re)) (* 1/24 re))))))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 1/24 (pow im 2)) 1/2)))))
#s(approx (cos im) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/24 (* -1/720 (pow im 2)))) 1/2)))))
#s(approx im #s(hole binary64 im))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) #s(hole binary64 (+ 1 (* -1 (pow im 2)))))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 1/3 (pow im 2)) 1)))))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/3 (* -2/45 (pow im 2)))) 1)))))
#s(approx (* 1/2 (cos (* 2 im))) #s(hole binary64 1/2))
#s(approx (* 1/2 (cos (* 2 im))) #s(hole binary64 (+ 1/2 (* -1 (pow im 2)))))
#s(approx (* 1/2 (cos (* 2 im))) #s(hole binary64 (+ 1/2 (* (pow im 2) (- (* 1/3 (pow im 2)) 1)))))
#s(approx (* 1/2 (cos (* 2 im))) #s(hole binary64 (+ 1/2 (* (pow im 2) (- (* (pow im 2) (+ 1/3 (* -2/45 (pow im 2)))) 1)))))
#s(approx (cos (* 2 im)) #s(hole binary64 (+ 1 (* -2 (pow im 2)))))
#s(approx (cos (* 2 im)) #s(hole binary64 (+ 1 (* (pow im 2) (- (* 2/3 (pow im 2)) 2)))))
#s(approx (cos (* 2 im)) #s(hole binary64 (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 2/3 (* -4/45 (pow im 2)))) 2)))))
#s(approx (* 2 im) #s(hole binary64 (* 2 im)))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (- (+ re (* (pow im 2) (+ 1/2 (* -1/2 re)))) 1)))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (- (+ re (* (pow im 2) (+ 1/2 (+ (* -1/2 re) (* (pow im 2) (- (* 1/24 re) 1/24)))))) 1)))
#s(approx (- (* (cos im) re) (cos im)) #s(hole binary64 (- (+ re (* (pow im 2) (+ 1/2 (+ (* -1/2 re) (* (pow im 2) (- (+ (* 1/24 re) (* (pow im 2) (+ 1/720 (* -1/720 re)))) 1/24)))))) 1)))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* -1/2 (* (pow im 2) (+ 1 re)))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* (pow im 2) (+ (* -1/2 (+ 1 re)) (* 1/24 (* (pow im 2) (+ 1 re)))))))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (+ 1 (+ re (* (pow im 2) (+ (* -1/2 (+ 1 re)) (* (pow im 2) (+ (* -1/720 (* (pow im 2) (+ 1 re))) (* 1/24 (+ 1 re))))))))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (+ re (* -1/2 (* (pow im 2) (+ 1 re))))))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (/ (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* (cos im) re) (cos im))) #s(hole binary64 (/ (- (* (pow re 2) (pow (cos im) 2)) (+ 1/2 (* 1/2 (cos (* 2 im))))) (- (* re (cos im)) (cos im)))))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) #s(hole binary64 (+ 1/2 (* 1/2 (cos (* 2 im))))))
#s(approx (* 1/2 (cos (* 2 im))) #s(hole binary64 (* 1/2 (cos (* 2 im)))))
#s(approx (cos (* 2 im)) #s(hole binary64 (cos (* 2 im))))
#s(approx (* (cos im) (- re -1)) #s(hole binary64 (* (cos im) (+ 1 re))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* -1/2 (* (pow im 2) (+ 1 re)))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) #s(hole binary64 (* (pow im 2) (+ (* -1/2 (+ 1 re)) (+ (/ 1 (pow im 2)) (/ re (pow im 2)))))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) #s(hole binary64 (* (pow im 2) (+ (* -1/2 (+ 1 re)) (/ re (pow im 2))))))
#s(approx (+ (* (* im im) -1/2) 1) #s(hole binary64 (* (pow im 2) (- (/ 1 (pow im 2)) 1/2))))
Outputs
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
(*.f64 (-.f64 re #s(literal -1 binary64)) (cos.f64 im))
(*.f64 (-.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
(*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64)))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))) (neg.f64 (neg.f64 (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)))))
(/.f64 (-.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (-.f64 (cos.f64 im) (*.f64 (cos.f64 im) re)))
(/.f64 (+.f64 (pow.f64 (cos.f64 im) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 3 binary64))) (+.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (-.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 im) (*.f64 (cos.f64 im) re)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (neg.f64 (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
(/.f64 (-.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)) (-.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))))
(fma.f64 #s(literal 1 binary64) (cos.f64 im) (*.f64 (cos.f64 im) re))
(fma.f64 (cos.f64 im) #s(literal 1 binary64) (*.f64 (cos.f64 im) re))
(fma.f64 (cos.f64 im) re (cos.f64 im))
(fma.f64 re (cos.f64 im) (cos.f64 im))
(-.f64 (/.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))) (/.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
(-.f64 (cos.f64 im) (*.f64 (neg.f64 re) (cos.f64 im)))
(-.f64 (cos.f64 im) (neg.f64 (*.f64 (cos.f64 im) re)))
(+.f64 (*.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 (cos.f64 im) re))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 im)) (*.f64 (cos.f64 im) re))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 4 binary64)) (pow.f64 (cos.f64 im) #s(literal 4 binary64))) (fma.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #s(literal 3 binary64)) (pow.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 4 binary64)) (+.f64 (pow.f64 (cos.f64 im) #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))))
(neg.f64 (-.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))))
(fma.f64 (fabs.f64 (*.f64 (cos.f64 im) re)) (fabs.f64 (*.f64 (cos.f64 im) re)) (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(fma.f64 (neg.f64 (*.f64 (cos.f64 im) re)) (neg.f64 (*.f64 (cos.f64 im) re)) (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(fma.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 re re) (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 im) re) (*.f64 (cos.f64 im) re) (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(-.f64 (-.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(*.f64 (fabs.f64 (*.f64 (cos.f64 im) re)) (fabs.f64 (*.f64 (cos.f64 im) re)))
(*.f64 (neg.f64 (*.f64 (cos.f64 im) re)) (neg.f64 (*.f64 (cos.f64 im) re)))
(*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
(*.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 re re))
(*.f64 (*.f64 (cos.f64 im) re) (*.f64 (cos.f64 im) re))
(pow.f64 (fabs.f64 (fabs.f64 (*.f64 (cos.f64 im) re))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 (*.f64 (cos.f64 im) re))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 (*.f64 (cos.f64 im) re))) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 re) (fabs.f64 (cos.f64 im))) #s(literal 2 binary64))
(pow.f64 (*.f64 re (fabs.f64 (cos.f64 im))) #s(literal 2 binary64))
(pow.f64 (*.f64 (fabs.f64 re) (neg.f64 (cos.f64 im))) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 re) (neg.f64 (cos.f64 im))) #s(literal 2 binary64))
(pow.f64 (*.f64 (fabs.f64 re) (cos.f64 im)) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 (cos.f64 im)) (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (*.f64 (cos.f64 im) (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (*.f64 (fabs.f64 (cos.f64 im)) (neg.f64 re)) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 (cos.f64 im)) (neg.f64 re)) #s(literal 2 binary64))
(pow.f64 (*.f64 (cos.f64 im) (neg.f64 re)) #s(literal 2 binary64))
(pow.f64 (*.f64 (fabs.f64 (cos.f64 im)) re) #s(literal 2 binary64))
(pow.f64 (*.f64 re (neg.f64 (cos.f64 im))) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 (cos.f64 im)) re) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 re) (cos.f64 im)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (*.f64 (cos.f64 im) re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (*.f64 (cos.f64 im) re)) #s(literal 2 binary64))
(pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 4 binary64)))
(fabs.f64 (neg.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))))
(fabs.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 im) re)
(*.f64 re (cos.f64 im))
(sin.f64 (+.f64 (neg.f64 im) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (fabs.f64 im) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 im) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 im) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 im)))
(cos.f64 (neg.f64 (fabs.f64 im)))
(cos.f64 (fabs.f64 (fabs.f64 im)))
(cos.f64 (neg.f64 im))
(cos.f64 (fabs.f64 im))
(cos.f64 im)
(+.f64 (*.f64 (sin.f64 im) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 im) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
im
re
#s(literal 2 binary64)
(*.f64 (neg.f64 (neg.f64 (cos.f64 im))) (neg.f64 (neg.f64 (cos.f64 im))))
(*.f64 (fabs.f64 (cos.f64 im)) (fabs.f64 (cos.f64 im)))
(*.f64 (neg.f64 (cos.f64 im)) (neg.f64 (cos.f64 im)))
(*.f64 (cos.f64 im) (cos.f64 im))
(pow.f64 (fabs.f64 (fabs.f64 (cos.f64 im))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 (cos.f64 im))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 (cos.f64 im))) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (cos.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (cos.f64 im)) #s(literal 2 binary64))
(pow.f64 (cos.f64 im) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 im) (neg.f64 im))) (cos.f64 (-.f64 (neg.f64 im) (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 im) (fabs.f64 im))) (cos.f64 (-.f64 (neg.f64 im) (fabs.f64 im)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 im) im)) (cos.f64 (-.f64 (neg.f64 im) im))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 im) (neg.f64 im))) (cos.f64 (-.f64 (fabs.f64 im) (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 im) (fabs.f64 im))) (cos.f64 (-.f64 (fabs.f64 im) (fabs.f64 im)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 im) im)) (cos.f64 (-.f64 (fabs.f64 im) im))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 im (neg.f64 im))) (cos.f64 (-.f64 im (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 im (fabs.f64 im))) (cos.f64 (-.f64 im (fabs.f64 im)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 im im)) (cos.f64 (-.f64 im im))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 im))) (sin.f64 (+.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 im))) (sin.f64 (+.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 im)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))) im)) (sin.f64 (+.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64))) im))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (+.f64 im im)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (pow.f64 (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64))))))
(fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/2 binary64) (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64))
(sqrt.f64 (pow.f64 (cos.f64 im) #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 (neg.f64 im)) (sin.f64 (neg.f64 im))))
(-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 (fabs.f64 im)) (sin.f64 (fabs.f64 im))))
(-.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (+.f64 im im))))
(-.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64))))
(fabs.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (+.f64 im im))) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (neg.f64 (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64))) #s(literal 1/2 binary64)))
(fabs.f64 (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(fabs.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 im)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64)))
#s(literal 1/2 binary64)
(*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 (+.f64 im im)))
(sin.f64 (+.f64 (neg.f64 (+.f64 im im)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (fma.f64 (fabs.f64 im) #s(literal 2 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (fma.f64 #s(literal 2 binary64) im (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 (+.f64 im im)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (+.f64 im im)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(-.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64))))
(cos.f64 (neg.f64 (neg.f64 (+.f64 im im))))
(cos.f64 (neg.f64 (fabs.f64 (+.f64 im im))))
(cos.f64 (fabs.f64 (fabs.f64 (+.f64 im im))))
(cos.f64 (neg.f64 (+.f64 im im)))
(cos.f64 (fabs.f64 (+.f64 im im)))
(cos.f64 (+.f64 im im))
(+.f64 (*.f64 (sin.f64 (+.f64 im im)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (+.f64 im im)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) im)
(*.f64 im #s(literal 2 binary64))
(+.f64 im im)
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 3 binary64)) (pow.f64 (cos.f64 im) #s(literal 3 binary64))) (fma.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (+.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)))))
(/.f64 (-.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
(neg.f64 (-.f64 (cos.f64 im) (*.f64 (cos.f64 im) re)))
(fma.f64 (cos.f64 im) re (neg.f64 (cos.f64 im)))
(fma.f64 re (cos.f64 im) (neg.f64 (cos.f64 im)))
(-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (neg.f64 (cos.f64 im)))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)))))
#s(approx (* (cos im) (- re -1)) (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re)))
(/.f64 (-.f64 (pow.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re)))))
(/.f64 (+.f64 (pow.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) #s(literal 1 binary64)))))
(fma.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64) (-.f64 re #s(literal -1 binary64)))
(fma.f64 (fma.f64 re re #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)))
(fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) (-.f64 re #s(literal -1 binary64)))
(fma.f64 (*.f64 im im) (*.f64 (-.f64 re #s(literal -1 binary64)) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) (-.f64 re #s(literal -1 binary64)))
(-.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re)))
(+.f64 (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)))
(+.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)))
(+.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)))) (-.f64 re (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64))) (*.f64 re re)) (-.f64 (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)) re))
(/.f64 (fma.f64 (*.f64 re re) re (*.f64 (pow.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal 3 binary64)) #s(literal -1/8 binary64))) (fma.f64 re re (-.f64 (*.f64 (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64))) (*.f64 re (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal 3 binary64)) #s(literal -1/8 binary64) (*.f64 (*.f64 re re) re)) (fma.f64 (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)) (-.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)) re))))
(fma.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64) re)
(fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re)
(fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re)
(fma.f64 (*.f64 im im) (*.f64 (-.f64 re #s(literal -1 binary64)) #s(literal -1/2 binary64)) re)
(fma.f64 #s(literal -1/2 binary64) (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) re)
(-.f64 (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)) (neg.f64 re))
(-.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im))))
(-.f64 re (neg.f64 (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)) re)
(+.f64 re (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)))
(*.f64 (*.f64 im im) #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) (*.f64 im im))
(*.f64 im (*.f64 im #s(literal -1/2 binary64)))
(*.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)))
(*.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)))
(*.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 im)))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 im im)
(pow.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 (fabs.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))
#s(literal -1/2 binary64)
(*.f64 (fma.f64 re re #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 re re #s(literal -1 binary64)))) (neg.f64 (neg.f64 (-.f64 re #s(literal 1 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re)) (-.f64 #s(literal 1 binary64) re))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 #s(literal 1 binary64) re))))
(/.f64 (-.f64 (*.f64 (*.f64 re re) re) #s(literal -1 binary64)) (fma.f64 re re (+.f64 #s(literal 1 binary64) (*.f64 re #s(literal -1 binary64)))))
(/.f64 (neg.f64 (fma.f64 re re #s(literal -1 binary64))) (neg.f64 (-.f64 re #s(literal 1 binary64))))
(/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re #s(literal 1 binary64)) (fma.f64 re re #s(literal -1 binary64))))
(neg.f64 (-.f64 #s(literal -1 binary64) re))
(fma.f64 (*.f64 re re) (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))) (/.f64 #s(literal -1 binary64) (-.f64 re #s(literal 1 binary64))))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (neg.f64 re))
(-.f64 re #s(literal -1 binary64))
(+.f64 (/.f64 (*.f64 re re) (-.f64 re #s(literal 1 binary64))) (/.f64 #s(literal -1 binary64) (-.f64 re #s(literal 1 binary64))))
(+.f64 #s(literal 1 binary64) re)
(+.f64 re #s(literal 1 binary64))
#s(literal -1 binary64)
#s(literal 1 binary64)
(*.f64 #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))))
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re)))
(/.f64 (-.f64 (*.f64 re re) (/.f64 (*.f64 (*.f64 #s(literal -1 binary64) re) (*.f64 #s(literal -1 binary64) re)) (*.f64 re re))) (+.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re)))
(/.f64 (-.f64 (*.f64 (*.f64 re re) re) (pow.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) re) #s(literal 3 binary64))) (fma.f64 re re (fma.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) re) (*.f64 (/.f64 #s(literal -1 binary64) re) re) (*.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re)))))
(neg.f64 (-.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) re) re))
(-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))
(+.f64 re (*.f64 (neg.f64 (/.f64 #s(literal -1 binary64) re)) re))
(+.f64 re (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) re)))
(*.f64 (/.f64 #s(literal -1 binary64) re) re)
(*.f64 re (/.f64 #s(literal -1 binary64) re))
(/.f64 (neg.f64 (*.f64 #s(literal -1 binary64) re)) (neg.f64 re))
(/.f64 (*.f64 #s(literal -1 binary64) re) re)
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) re))
(pow.f64 (neg.f64 re) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 re #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 re))
(/.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 re)))
(/.f64 #s(literal -1 binary64) re)
#s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal -1/2 binary64))))))
(fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 im im) #s(literal 1 binary64))
(fma.f64 im (*.f64 im #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64))))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)))
(/.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)) #s(literal 1 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)) (*.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 1 binary64)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 re (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)))
(+.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))
(*.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64)) re)
(*.f64 re (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re))) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re)))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 re re) re))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re)) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re)))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 re re) re) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal 1/2 binary64) re) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)))))
(fma.f64 #s(literal 1/2 binary64) re (*.f64 re (/.f64 #s(literal 1 binary64) re)))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
(fma.f64 re #s(literal 1/2 binary64) (*.f64 re (/.f64 #s(literal 1 binary64) re)))
(fma.f64 re #s(literal 1/2 binary64) #s(literal 1 binary64))
(-.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 #s(literal 1/2 binary64) re)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) re))
(+.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 re (/.f64 #s(literal 1 binary64) re)))
(+.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (exp re) (-.f64 re #s(literal -1 binary64))))
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
(*.f64 (fma.f64 re re #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 re re #s(literal -1 binary64)))) (neg.f64 (neg.f64 (-.f64 re #s(literal 1 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re)) (-.f64 #s(literal 1 binary64) re))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 #s(literal 1 binary64) re))))
(/.f64 (-.f64 (*.f64 (*.f64 re re) re) #s(literal -1 binary64)) (fma.f64 re re (+.f64 #s(literal 1 binary64) (*.f64 re #s(literal -1 binary64)))))
(/.f64 (neg.f64 (fma.f64 re re #s(literal -1 binary64))) (neg.f64 (-.f64 re #s(literal 1 binary64))))
(/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re #s(literal 1 binary64)) (fma.f64 re re #s(literal -1 binary64))))
(neg.f64 (-.f64 #s(literal -1 binary64) re))
(fma.f64 (*.f64 re re) (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))) (/.f64 #s(literal -1 binary64) (-.f64 re #s(literal 1 binary64))))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (neg.f64 re))
(-.f64 re #s(literal -1 binary64))
(+.f64 (/.f64 (*.f64 re re) (-.f64 re #s(literal 1 binary64))) (/.f64 #s(literal -1 binary64) (-.f64 re #s(literal 1 binary64))))
(+.f64 #s(literal 1 binary64) re)
(+.f64 re #s(literal 1 binary64))
(*.f64 (-.f64 re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (-.f64 (*.f64 re re) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1 binary64)) (fma.f64 re re #s(literal 1 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re) #s(literal -1 binary64)) (fma.f64 (*.f64 re re) (*.f64 re re) (-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 re re)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)) #s(literal 1 binary64)) (fma.f64 (*.f64 re re) (*.f64 re re) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)))))
(neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re)))
(fma.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 re)) #s(literal -1 binary64))
(fma.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)) #s(literal -1 binary64))
(fma.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)) #s(literal -1 binary64))
(fma.f64 (fabs.f64 re) (fabs.f64 re) #s(literal -1 binary64))
(fma.f64 (neg.f64 re) (neg.f64 re) #s(literal -1 binary64))
(fma.f64 re re #s(literal -1 binary64))
(-.f64 (*.f64 re re) #s(literal 1 binary64))
(+.f64 (*.f64 re re) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (*.f64 re re))
(/.f64 (-.f64 (*.f64 (*.f64 re re) re) #s(literal 1 binary64)) (fma.f64 re re (+.f64 #s(literal 1 binary64) (*.f64 re #s(literal 1 binary64)))))
(/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal -1 binary64)))
(neg.f64 (-.f64 #s(literal 1 binary64) re))
(-.f64 re #s(literal 1 binary64))
(+.f64 re #s(literal -1 binary64))
#s(approx (* (exp re) (cos im)) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (exp re) (cos im)) (fma.f64 re (fma.f64 (*.f64 (cos.f64 im) re) #s(literal 1/2 binary64) (cos.f64 im)) (cos.f64 im)))
#s(approx (* (exp re) (cos im)) (fma.f64 re (fma.f64 re (fma.f64 (*.f64 #s(literal 1/6 binary64) re) (cos.f64 im) (*.f64 #s(literal 1/2 binary64) (cos.f64 im))) (cos.f64 im)) (cos.f64 im)))
#s(approx (* (cos im) (- re -1)) (pow.f64 (cos.f64 im) #s(literal 1 binary64)))
#s(approx (* (cos im) (- re -1)) (+.f64 (pow.f64 (cos.f64 im) #s(literal 1 binary64)) (*.f64 re (pow.f64 (cos.f64 im) #s(literal 1 binary64)))))
#s(approx (* (cos im) (- re -1)) (fma.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (+.f64 im im)) (cos.f64 im)) (fma.f64 (-.f64 (*.f64 (-.f64 (neg.f64 (cos.f64 im)) (neg.f64 (pow.f64 (cos.f64 im) #s(literal 1 binary64)))) re) (neg.f64 (pow.f64 (cos.f64 im) #s(literal 1 binary64)))) re (/.f64 #s(literal 1/2 binary64) (cos.f64 im)))))
#s(approx (* (cos im) (- re -1)) (fma.f64 (/.f64 (cos.f64 (+.f64 im im)) (cos.f64 im)) #s(literal 1/2 binary64) (fma.f64 (-.f64 (*.f64 (-.f64 (fma.f64 re (-.f64 (neg.f64 (cos.f64 im)) (neg.f64 (pow.f64 (cos.f64 im) #s(literal 1 binary64)))) (neg.f64 (cos.f64 im))) (neg.f64 (pow.f64 (cos.f64 im) #s(literal 1 binary64)))) re) (neg.f64 (pow.f64 (cos.f64 im) #s(literal 1 binary64)))) re (/.f64 #s(literal 1/2 binary64) (cos.f64 im)))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (-.f64 (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
#s(approx (pow (* (cos im) re) 2) (*.f64 (*.f64 re re) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
#s(approx (* (cos im) re) (*.f64 (cos.f64 im) re))
#s(approx re re)
#s(approx (- (* (cos im) re) (cos im)) (neg.f64 (cos.f64 im)))
#s(approx (- (* (cos im) re) (cos im)) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (+.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)) re (*.f64 (*.f64 im im) #s(literal -1/2 binary64))) #s(literal 1 binary64)))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)) re (*.f64 (*.f64 im im) #s(literal -1/2 binary64))))
#s(approx (- re -1) #s(literal 1 binary64))
#s(approx (- re -1) (-.f64 re #s(literal -1 binary64)))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
#s(approx (* (/ -1 re) re) #s(literal -1 binary64))
#s(approx (/ -1 re) (/.f64 #s(literal -1 binary64) re))
#s(approx (+ (* 1/2 re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))
#s(approx (+ (* re re) -1) (fma.f64 re re #s(literal -1 binary64)))
#s(approx (- re 1) (-.f64 re #s(literal 1 binary64)))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (exp.f64 re)))
#s(approx (* (cos im) (- re -1)) (*.f64 (+.f64 (/.f64 (cos.f64 im) re) (cos.f64 im)) re))
#s(approx (* (cos im) (- re -1)) (*.f64 (+.f64 (+.f64 (/.f64 (cos.f64 im) re) (cos.f64 im)) (-.f64 (neg.f64 (/.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 re re) (cos.f64 im)))) (/.f64 (neg.f64 (cos.f64 im)) (*.f64 re re)))) re))
#s(approx (* (cos im) (- re -1)) (*.f64 (+.f64 (+.f64 (/.f64 (cos.f64 im) re) (cos.f64 im)) (-.f64 (+.f64 (neg.f64 (/.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (cos.f64 im) (*.f64 (*.f64 re re) re)))) (neg.f64 (/.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 re re) (cos.f64 im))))) (+.f64 (/.f64 (neg.f64 (cos.f64 im)) (*.f64 (*.f64 re re) re)) (/.f64 (neg.f64 (cos.f64 im)) (*.f64 re re))))) re))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (*.f64 (+.f64 (/.f64 (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (*.f64 re re)) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (*.f64 re re)))
#s(approx (- (* (cos im) re) (cos im)) (*.f64 (+.f64 (/.f64 (neg.f64 (cos.f64 im)) re) (cos.f64 im)) re))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)) re))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (+.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 (*.f64 im im) re) (*.f64 im im)) (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64)) re))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) (*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 (*.f64 im im) re) (*.f64 im im)) #s(literal 1 binary64)) re))
#s(approx (- re -1) (fma.f64 #s(literal 1 binary64) re #s(literal 1 binary64)))
#s(approx (exp re) (exp.f64 re))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64)) (*.f64 re re)))
#s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 re re)) (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 re re)))
#s(approx (+ (* 1/2 re) 1) (*.f64 #s(literal 1/2 binary64) re))
#s(approx (+ (* 1/2 re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)))
#s(approx (+ (* re re) -1) (*.f64 re re))
#s(approx (+ (* re re) -1) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) (*.f64 re re)))
#s(approx (- re 1) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) re)) re))
#s(approx (* (cos im) (- re -1)) (neg.f64 (*.f64 (+.f64 (/.f64 (neg.f64 (cos.f64 im)) re) (neg.f64 (cos.f64 im))) re)))
#s(approx (* (cos im) (- re -1)) (neg.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (-.f64 (neg.f64 (/.f64 (-.f64 (pow.f64 (cos.f64 im) #s(literal 1 binary64)) (cos.f64 im)) re)) (neg.f64 (cos.f64 im))) re)) (neg.f64 (cos.f64 im))) re)))
#s(approx (* (cos im) (- re -1)) (neg.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (-.f64 (neg.f64 (/.f64 (-.f64 (+.f64 (neg.f64 (/.f64 (-.f64 (cos.f64 im) (pow.f64 (cos.f64 im) #s(literal 1 binary64))) re)) (pow.f64 (cos.f64 im) #s(literal 1 binary64))) (cos.f64 im)) re)) (neg.f64 (cos.f64 im))) re)) (neg.f64 (cos.f64 im))) re)))
#s(approx (- (* (cos im) re) (cos im)) (neg.f64 (*.f64 (+.f64 (/.f64 (cos.f64 im) re) (neg.f64 (cos.f64 im))) re)))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (neg.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re)))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (neg.f64 (*.f64 (-.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)) re))) #s(literal 1 binary64)) re)))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) (neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 (*.f64 im im) re) (*.f64 im im)) #s(literal -1 binary64)) re)))
#s(approx (- re 1) (neg.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1 binary64)) re)))
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (*.f64 im im) (exp.f64 re)) #s(literal -1/2 binary64) (exp.f64 re)))
#s(approx (* (exp re) (cos im)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 im im)) (exp.f64 re) (*.f64 #s(literal -1/2 binary64) (exp.f64 re))) (*.f64 im im) (exp.f64 re)))
#s(approx (* (exp re) (cos im)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 im im)) (exp.f64 re) (*.f64 #s(literal 1/24 binary64) (exp.f64 re))) (*.f64 im im) (*.f64 #s(literal -1/2 binary64) (exp.f64 re))) (*.f64 im im) (exp.f64 re)))
#s(approx (* (cos im) (- re -1)) (-.f64 re #s(literal -1 binary64)))
#s(approx (* (cos im) (- re -1)) (fma.f64 (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))) (/.f64 (*.f64 re re) (-.f64 #s(literal 1 binary64) re))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (fma.f64 re re #s(literal -1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (cos im) (- re -1)) (fma.f64 (-.f64 (+.f64 (fma.f64 (-.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 re re)) (-.f64 re #s(literal 1 binary64))) (/.f64 #s(literal 1/3 binary64) (-.f64 re #s(literal 1 binary64)))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (/.f64 (-.f64 (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (fma.f64 re re #s(literal -1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re))) (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))) (/.f64 (*.f64 re re) (-.f64 #s(literal 1 binary64) re)))) (-.f64 #s(literal 1 binary64) re)) (/.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) re #s(literal -1/24 binary64)) (fma.f64 re re #s(literal -1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re))))) (*.f64 im im) (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64)))) (/.f64 (*.f64 re re) (-.f64 #s(literal 1 binary64) re))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (fma.f64 re re #s(literal -1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (cos im) (- re -1)) (fma.f64 (-.f64 (+.f64 (fma.f64 (-.f64 (-.f64 (fma.f64 (-.f64 (fma.f64 #s(literal -2/45 binary64) (/.f64 (*.f64 re re) (-.f64 re #s(literal 1 binary64))) (/.f64 #s(literal 2/45 binary64) (-.f64 re #s(literal 1 binary64)))) (fma.f64 (fma.f64 #s(literal -1/720 binary64) re #s(literal 1/720 binary64)) (/.f64 (fma.f64 re re #s(literal -1 binary64)) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re))) (/.f64 (fma.f64 (-.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 re re)) (-.f64 re #s(literal 1 binary64))) (/.f64 #s(literal 1/3 binary64) (-.f64 re #s(literal 1 binary64)))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (/.f64 (-.f64 (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (fma.f64 re re #s(literal -1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re))) (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))) (/.f64 (*.f64 re re) (-.f64 #s(literal 1 binary64) re)))) (-.f64 #s(literal 1 binary64) re)) (/.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) re #s(literal -1/24 binary64)) (fma.f64 re re #s(literal -1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re))))) (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (*.f64 (fma.f64 #s(literal 1/24 binary64) re #s(literal -1/24 binary64)) (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))) (/.f64 (*.f64 re re) (-.f64 #s(literal 1 binary64) re))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (fma.f64 re re #s(literal -1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re)))))) (-.f64 re #s(literal 1 binary64))))) (*.f64 im im) (/.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 re re)) (-.f64 re #s(literal 1 binary64)))) (/.f64 #s(literal 1/3 binary64) (-.f64 re #s(literal 1 binary64)))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (/.f64 (-.f64 (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (fma.f64 re re #s(literal -1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re))) (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64))) (/.f64 (*.f64 re re) (-.f64 #s(literal 1 binary64) re)))) (-.f64 #s(literal 1 binary64) re)) (/.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) re #s(literal -1/24 binary64)) (fma.f64 re re #s(literal -1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re))))) (*.f64 im im) (/.f64 #s(literal 1 binary64) (-.f64 re #s(literal 1 binary64)))) (/.f64 (*.f64 re re) (-.f64 #s(literal 1 binary64) re))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (fma.f64 re re #s(literal -1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) re) (-.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (-.f64 re #s(literal -1 binary64))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (fma.f64 (+.f64 (neg.f64 (*.f64 re re)) #s(literal 1 binary64)) (*.f64 im im) (fma.f64 re re #s(literal -1 binary64))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (fma.f64 (+.f64 (fma.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 re re) #s(literal -1/3 binary64)) (*.f64 im im) (neg.f64 (*.f64 re re))) #s(literal 1 binary64)) (*.f64 im im) (fma.f64 re re #s(literal -1 binary64))))
#s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (fma.f64 (+.f64 (fma.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 re re) (-.f64 (*.f64 (fma.f64 #s(literal -2/45 binary64) (*.f64 re re) #s(literal 2/45 binary64)) (*.f64 im im)) #s(literal 1/3 binary64))) (*.f64 im im) (neg.f64 (*.f64 re re))) #s(literal 1 binary64)) (*.f64 im im) (fma.f64 re re #s(literal -1 binary64))))
#s(approx (pow (* (cos im) re) 2) (fma.f64 (neg.f64 (*.f64 im im)) (*.f64 re re) (*.f64 re re)))
#s(approx (pow (* (cos im) re) 2) (fma.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 im im)) (*.f64 re re) (neg.f64 (*.f64 re re))) (*.f64 im im) (*.f64 re re)))
#s(approx (pow (* (cos im) re) 2) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -2/45 binary64) (*.f64 im im)) (*.f64 re re) (*.f64 #s(literal 1/3 binary64) (*.f64 re re))) (*.f64 im im) (neg.f64 (*.f64 re re))) (*.f64 im im) (*.f64 re re)))
#s(approx (* (cos im) re) (fma.f64 (*.f64 (*.f64 im im) re) #s(literal -1/2 binary64) re))
#s(approx (* (cos im) re) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) re) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) re)) (*.f64 im im) re))
#s(approx (* (cos im) re) (fma.f64 (fma.f64 (*.f64 im im) (fma.f64 (*.f64 (*.f64 im im) re) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) re)) (*.f64 #s(literal -1/2 binary64) re)) (*.f64 im im) re))
#s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (cos im) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 im im) #s(literal 1/24 binary64)) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx im im)
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) (+.f64 (neg.f64 (*.f64 im im)) #s(literal 1 binary64)))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) (fma.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal -1 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) (fma.f64 (fma.f64 (fma.f64 #s(literal -2/45 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal -1 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (* 1/2 (cos (* 2 im))) #s(literal 1/2 binary64))
#s(approx (* 1/2 (cos (* 2 im))) (+.f64 (neg.f64 (*.f64 im im)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos (* 2 im))) (fma.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal -1 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos (* 2 im))) (fma.f64 (fma.f64 (fma.f64 #s(literal -2/45 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal -1 binary64)) (*.f64 im im) #s(literal 1/2 binary64)))
#s(approx (cos (* 2 im)) (fma.f64 #s(literal -2 binary64) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (cos (* 2 im)) (fma.f64 (fma.f64 #s(literal 2/3 binary64) (*.f64 im im) #s(literal -2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (cos (* 2 im)) (fma.f64 (fma.f64 (fma.f64 #s(literal -4/45 binary64) (*.f64 im im) #s(literal 2/3 binary64)) (*.f64 im im) #s(literal -2 binary64)) (*.f64 im im) #s(literal 1 binary64)))
#s(approx (* 2 im) (+.f64 im im))
#s(approx (- (* (cos im) re) (cos im)) (-.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (*.f64 im im) re) #s(literal 1 binary64)))
#s(approx (- (* (cos im) re) (cos im)) (-.f64 (fma.f64 (+.f64 (fma.f64 #s(literal -1/2 binary64) re #s(literal 1/2 binary64)) (*.f64 (fma.f64 #s(literal 1/24 binary64) re #s(literal -1/24 binary64)) (*.f64 im im))) (*.f64 im im) re) #s(literal 1 binary64)))
#s(approx (- (* (cos im) re) (cos im)) (-.f64 (fma.f64 (+.f64 (fma.f64 (-.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) re #s(literal 1/720 binary64)) (*.f64 im im) (*.f64 #s(literal 1/24 binary64) re)) #s(literal 1/24 binary64)) (*.f64 im im) (*.f64 #s(literal -1/2 binary64) re)) #s(literal 1/2 binary64)) (*.f64 im im) re) #s(literal 1 binary64)))
#s(approx (* (cos im) (- re -1)) (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (fma.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal 1/24 binary64) (*.f64 (-.f64 re #s(literal -1 binary64)) #s(literal -1/2 binary64))) (*.f64 im im) re) #s(literal 1 binary64)))
#s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (fma.f64 (-.f64 re #s(literal -1 binary64)) #s(literal -1/2 binary64) (*.f64 (*.f64 im im) (fma.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (-.f64 re #s(literal -1 binary64)))))) (*.f64 im im) re) #s(literal 1 binary64)))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) (fma.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re))
#s(approx (* im im) (*.f64 im im))
#s(approx (* (cos im) (- re -1)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
#s(approx (+ 1/2 (* 1/2 (cos (* 2 im)))) (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos (* 2 im))) (*.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64)))
#s(approx (cos (* 2 im)) (cos.f64 (+.f64 im im)))
#s(approx (* (cos im) (- re -1)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)))
#s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (*.f64 im im) (fma.f64 (-.f64 re #s(literal -1 binary64)) #s(literal -1/2 binary64) (/.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)))))
#s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) (*.f64 (*.f64 im im) (fma.f64 (-.f64 re #s(literal -1 binary64)) #s(literal -1/2 binary64) (/.f64 re (*.f64 im im)))))
#s(approx (+ (* (* im im) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/2 binary64)) (*.f64 im im)))

eval54.0ms (1.5%)

Memory
14.0MiB live, 102.5MiB allocated; 11ms collecting garbage
Compiler

Compiled 4 666 to 2 174 computations (53.4% saved)

prune26.0ms (0.7%)

Memory
-16.3MiB live, 45.9MiB allocated; 8ms collecting garbage
Pruning

22 alts after pruning (12 fresh and 10 done)

PrunedKeptTotal
New4328440
Fresh246
Picked325
Done088
Total43722459
Accuracy
100.0%
Counts
459 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
60.9%
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
61.9%
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 im im) #s(literal 1 binary64))))
24.8%
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
63.3%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
36.8%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
30.1%
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
30.1%
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
33.9%
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im) #s(literal 1 binary64))))
21.3%
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/2 binary64)) im) im))))
11.9%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64)) (*.f64 re re)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
11.9%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
63.3%
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im)))
52.7%
#s(approx (* (exp re) (cos im)) (/.f64 #s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
53.2%
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
30.8%
#s(approx (* (exp re) (cos im)) (sin.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64)))))
52.5%
#s(approx (* (exp re) (cos im)) (cos.f64 im))
30.4%
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (-.f64 re #s(literal -1 binary64))))
29.9%
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 #s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) (*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 (*.f64 im im) re) (*.f64 im im)) #s(literal 1 binary64)) re)) #s(literal 1 binary64))))
29.1%
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
5.6%
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)) re))))
11.4%
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)))))
Compiler

Compiled 622 to 517 computations (16.9% saved)

regimes40.0ms (1.1%)

Memory
21.8MiB live, 68.3MiB allocated; 3ms collecting garbage
Counts
30 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)) re))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/2 binary64)) im) im))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 #s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) (*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 (*.f64 im im) re) (*.f64 im im)) #s(literal 1 binary64)) re)) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64)) (*.f64 re re)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (* (exp re) (cos im)) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (exp re) (cos im)) (sin.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64)))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
(*.f64 (exp.f64 re) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) (cos.f64 im)) re (cos.f64 im)))
#s(approx (* (exp re) (cos im)) (/.f64 #s(approx (- (pow (* (cos im) re) 2) (+ 1/2 (* 1/2 (cos (* 2 im))))) (neg.f64 (fma.f64 (cos.f64 (+.f64 im im)) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
#s(approx (* (exp re) (cos im)) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 im) re) #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) im))))) (-.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
Calls

5 calls:

9.0ms
re
8.0ms
im
7.0ms
(cos.f64 im)
7.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
6.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
100.0%1(cos.f64 im)
100.0%1(exp.f64 re)
100.0%1(*.f64 (exp.f64 re) (cos.f64 im))
100.0%1re
100.0%1im
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes38.0ms (1.1%)

Memory
-39.3MiB live, 53.5MiB allocated; 4ms collecting garbage
Counts
26 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)) re))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/2 binary64)) im) im))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 #s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) (*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 (*.f64 im im) re) (*.f64 im im)) #s(literal 1 binary64)) re)) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64)) (*.f64 re re)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (* (exp re) (cos im)) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (exp re) (cos im)) (sin.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64)))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
Outputs
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (cos.f64 im))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 im im) #s(literal 1 binary64))))
Calls

5 calls:

10.0ms
(cos.f64 im)
8.0ms
im
7.0ms
re
6.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
5.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
82.1%2(cos.f64 im)
89.7%3(exp.f64 re)
93.2%5(*.f64 (exp.f64 re) (cos.f64 im))
91.3%4re
82.2%2im
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes7.0ms (0.2%)

Memory
8.0MiB live, 8.0MiB allocated; 0ms collecting garbage
Counts
25 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64)) re))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) #s(approx (+ (+ (* (* (* im im) -1/2) (- re -1)) re) 1) (*.f64 (*.f64 (-.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal -1/2 binary64)))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (-.f64 re #s(literal -1 binary64)) re) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 #s(literal 1/24 binary64) im) im)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/2 binary64)) im) im))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (/.f64 (fma.f64 re re #s(literal -1 binary64)) (-.f64 re #s(literal 1 binary64)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (+.f64 #s(approx (+ (* (* (* im im) -1/2) (- re -1)) re) (*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 (*.f64 im im) re) (*.f64 im im)) #s(literal 1 binary64)) re)) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64)) (*.f64 re re)))) #s(approx (cos im) (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re (*.f64 (/.f64 #s(literal -1 binary64) re) re))) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) im) im #s(literal -1/2 binary64)) (*.f64 im im) #s(literal 1 binary64))))
#s(approx (* (exp re) (cos im)) (cos.f64 im))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
#s(approx (* (exp re) (cos im)) (sin.f64 (+.f64 im (/.f64 (PI.f64) #s(literal 2 binary64)))))
Outputs
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) #s(approx (+ (* (* im im) -1/2) 1) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))))
#s(approx (* (exp re) (cos im)) (*.f64 (cos.f64 im) (-.f64 re #s(literal -1 binary64))))
(*.f64 (exp.f64 re) #s(approx (cos im) (fma.f64 #s(approx (+ (* 1/24 (* im im)) -1/2) (*.f64 (*.f64 im im) #s(literal 1/24 binary64))) (*.f64 im im) #s(literal 1 binary64))))
Calls

1 calls:

6.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
Results
AccuracySegmentsBranch
92.9%5(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes18.0ms (0.5%)

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

3 calls:

6.0ms
re
5.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
5.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
89.2%3(exp.f64 re)
89.2%3re
92.6%5(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes117.0ms (3.3%)

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

5 calls:

94.0ms
im
6.0ms
re
6.0ms
(cos.f64 im)
5.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
4.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
67.1%2(cos.f64 im)
61.9%1im
67.0%3(exp.f64 re)
67.0%3re
70.7%3(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes6.0ms (0.2%)

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

1 calls:

5.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
Results
AccuracySegmentsBranch
70.7%3(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes28.0ms (0.8%)

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

5 calls:

9.0ms
re
5.0ms
im
5.0ms
(cos.f64 im)
4.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
4.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
60.9%1im
60.9%1(exp.f64 re)
60.9%1re
64.5%3(cos.f64 im)
60.9%1(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes5.0ms (0.1%)

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

1 calls:

4.0ms
(cos.f64 im)
Results
AccuracySegmentsBranch
64.5%3(cos.f64 im)
Compiler

Compiled 2 to 3 computations (-50% saved)

regimes21.0ms (0.6%)

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

5 calls:

7.0ms
re
4.0ms
im
3.0ms
(cos.f64 im)
3.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
3.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
42.4%2im
61.1%4re
58.5%3(exp.f64 re)
59.5%3(*.f64 (exp.f64 re) (cos.f64 im))
46.1%3(cos.f64 im)
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes6.0ms (0.2%)

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

2 calls:

3.0ms
re
2.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
Results
AccuracySegmentsBranch
58.4%3re
59.1%3(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 6 to 7 computations (-16.7% saved)

regimes9.0ms (0.3%)

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

4 calls:

2.0ms
re
2.0ms
(cos.f64 im)
2.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
2.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
33.8%2(cos.f64 im)
46.0%3re
46.0%3(exp.f64 re)
45.5%3(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 10 to 13 computations (-30% saved)

regimes9.0ms (0.3%)

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

4 calls:

3.0ms
re
2.0ms
im
2.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
2.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
30.4%1im
40.1%2(*.f64 (exp.f64 re) (cos.f64 im))
39.4%3(exp.f64 re)
39.5%3re
Compiler

Compiled 9 to 12 computations (-33.3% saved)

regimes6.0ms (0.2%)

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

4 calls:

1.0ms
re
1.0ms
(cos.f64 im)
1.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
1.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
33.1%2(cos.f64 im)
32.5%2(exp.f64 re)
32.5%2re
33.2%2(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 10 to 13 computations (-30% saved)

regimes3.0ms (0.1%)

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

2 calls:

1.0ms
(cos.f64 im)
1.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
Results
AccuracySegmentsBranch
32.4%2(cos.f64 im)
32.5%2(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 7 to 8 computations (-14.3% saved)

regimes5.0ms (0.1%)

Memory
12.6MiB live, 12.6MiB allocated; 0ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (-.f64 re #s(literal -1 binary64))))
Outputs
#s(approx (* (exp re) (cos im)) #s(approx (* (cos im) (- re -1)) (-.f64 re #s(literal -1 binary64))))
Calls

5 calls:

1.0ms
re
1.0ms
im
1.0ms
(cos.f64 im)
1.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
1.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
30.4%1im
30.4%1(cos.f64 im)
30.4%1(exp.f64 re)
30.4%1re
30.4%1(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999072875971003
1.0
0.0ms
0.0
0.020712905941519057
0.0ms
-2.8980636563252173e-5
0.0
0.0ms
-inf
-0.9993504249106434
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch4.0ms (0.1%)

Memory
-52.7MiB live, 1.0MiB allocated; 7ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999072875971003
1.0
0.0ms
0.0
0.020712905941519057
0.0ms
-0.040176221264869014
-2.8980636563252173e-5
0.0ms
-inf
-0.9993504249106434
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch1.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999072875971003
1.0
0.0ms
0.0
0.020712905941519057
0.0ms
-2.8980636563252173e-5
0.0
0.0ms
-inf
-0.9993504249106434
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9994787423805523
0.9998198434366872
0.0ms
0.0
0.020712905941519057
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9994787423805523
0.9998198434366872
0.0ms
0.0
0.020712905941519057
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999072875971003
0.9999991644644487
0.0ms
-0.040176221264869014
-0.03790020106743046
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999072875971003
0.9999991644644487
0.0ms
-0.040176221264869014
-0.03790020106743046
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999072875971003
1.0
0.0ms
0.0
0.020712905941519057
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0002480170016739
+inf
0.0ms
0.0
0.020712905941519057
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch31.0ms (0.9%)

Memory
2.1MiB live, 49.0MiB allocated; 2ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
74688695.40672308
13140088541030318.0
15.0ms
-8492744895963498.0
-8.879508731153223
Samples
18.0ms304×0valid
Compiler

Compiled 704 to 705 computations (-0.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-cos: 8.0ms (67.6% of total)
ival-exp: 3.0ms (25.3% of total)
ival-mult!: 1.0ms (8.4% of total)
adjust: 0.0ms (0% of total)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
0.020712905941519057
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.10560805747194442
-0.054950242073587084
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

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

Compiled 8 to 10 computations (-25% saved)

derivations487.0ms (13.7%)

Memory
41.0MiB live, 367.6MiB allocated; 37ms collecting garbage
Stop Event
fuel
Compiler

Compiled 217 to 136 computations (37.3% saved)

preprocess251.0ms (7.1%)

Memory
-36.7MiB live, 255.0MiB allocated; 208ms collecting garbage
Remove

(abs im)

Compiler

Compiled 1 380 to 1 163 computations (15.7% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...