math.cos on complex, imaginary part

Time bar (total: 5.2s)

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 13 to 12 computations (7.7% saved)

sample2.3s (43.8%)

Memory
15.1MiB live, 2 516.3MiB allocated; 719ms collecting garbage
Samples
797.0ms1 155×2valid
703.0ms2 796×1valid
412.0ms4 305×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.6s
ival-exp: 923.0ms (57.2% of total)
ival-sin: 327.0ms (20.2% of total)
adjust: 132.0ms (8.2% of total)
ival-mult!: 125.0ms (7.7% of total)
ival-neg: 64.0ms (4% of total)
ival-sub!: 44.0ms (2.7% of total)
Bogosity

preprocess35.0ms (0.7%)

Memory
-7.1MiB live, 37.2MiB allocated; 16ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02670
111460
277059
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
66.5%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 22 to 20 computations (9.1% saved)

series108.0ms (2.1%)

Memory
3.4MiB live, 114.3MiB allocated; 65ms collecting garbage
Counts
10 → 38
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
#s(literal 1/2 binary64)
(sin.f64 re)
re
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 #s(literal 1/240 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/240 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/12 binary64))))))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/240 binary64) (*.f64 #s(literal -1/10080 binary64) (pow.f64 re #s(literal 2 binary64))))) #s(literal 1/12 binary64))))))
#s(approx (sin re) re)
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 re #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
#s(approx (sin re) (sin.f64 re))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 re) (*.f64 #s(literal -1/120 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) (sin.f64 re) (*.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))))))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 #s(literal -2 binary64) im))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 im (-.f64 (*.f64 #s(literal -1/3 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 2 binary64))))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/60 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/3 binary64))) #s(literal 2 binary64))))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/2520 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/60 binary64))) #s(literal 1/3 binary64))) #s(literal 2 binary64))))
#s(approx (exp (neg im)) #s(literal 1 binary64))
#s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im)))
#s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)))))
#s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 im (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) im))) #s(literal 1 binary64)))))
#s(approx (neg im) (*.f64 #s(literal -1 binary64) im))
#s(approx im im)
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im)))))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/6 binary64) im)))))))
#s(approx (- (exp (neg im)) (exp im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (exp (neg im)) (exp.f64 (neg.f64 im)))
#s(approx (exp im) (exp.f64 im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (exp.f64 im)))))
#s(approx (- (exp (neg im)) (exp im)) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (exp.f64 im)))
#s(approx (exp (neg im)) (exp.f64 (*.f64 #s(literal -1 binary64) im)))
Calls

6 calls:

TimeVariablePoint
1.0ms
im
0
1.0ms
im
-inf
1.0ms
re
inf
1.0ms
im
inf
1.0ms
re
-inf

rewrite162.0ms (3.1%)

Memory
7.8MiB live, 146.4MiB allocated; 21ms collecting garbage
Counts
10 → 35
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
#s(literal 1/2 binary64)
(sin.f64 re)
re
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (/.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 1/2 binary64)) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
(*.f64 (sin.f64 re) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sin.f64 re)
re
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(*.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (+.f64 (exp.f64 (*.f64 im #s(literal 3 binary64))) (exp.f64 (neg.f64 (*.f64 im #s(literal 3 binary64)))))) (+.f64 (expm1.f64 (+.f64 im im)) (exp.f64 (neg.f64 (+.f64 im im)))))
(*.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im))) (-.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 (+.f64 im im)))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im))))))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64))
(*.f64 (exp.f64 (neg.f64 (+.f64 im im))) (exp.f64 im))
(*.f64 (pow.f64 (exp.f64 im) (/.f64 #s(literal -1 binary64) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) (/.f64 #s(literal -1 binary64) #s(literal 2 binary64))))
(*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(*.f64 (exp.f64 im) (exp.f64 (neg.f64 (+.f64 im im))))
(*.f64 #s(literal -1 binary64) im)
(-.f64 (log.f64 #s(literal 1 binary64)) im)
(-.f64 (log.f64 (neg.f64 #s(literal 1 binary64))) (log.f64 (neg.f64 (exp.f64 im))))
(-.f64 (log.f64 (*.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (/.f64 (expm1.f64 (+.f64 im im)) #s(literal 2 binary64))) (exp.f64 (neg.f64 im)))) (log.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (/.f64 (expm1.f64 (+.f64 im im)) #s(literal 2 binary64)))))
(-.f64 (log.f64 (+.f64 (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (log.f64 (fma.f64 (sinh.f64 (neg.f64 im)) (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)) (*.f64 (cosh.f64 im) (cosh.f64 im)))))
im
(-.f64 (log.f64 #s(literal 1 binary64)) (neg.f64 im))
(-.f64 (log.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (log.f64 (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (*.f64 (cosh.f64 im) (cosh.f64 im)))))
(log.f64 (exp.f64 im))
(neg.f64 (neg.f64 im))
(*.f64 (exp.f64 im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (exp.f64 im))
(*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (+.f64 im im)))
(*.f64 (/.f64 #s(literal 1 binary64) (neg.f64 #s(literal 1 binary64))) (neg.f64 (exp.f64 im)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fma.f64 (sinh.f64 (neg.f64 im)) (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)) (*.f64 (cosh.f64 im) (cosh.f64 im))))

eval17.0ms (0.3%)

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

Compiled 1 499 to 376 computations (74.9% saved)

prune18.0ms (0.3%)

Memory
-36.7MiB live, 11.3MiB allocated; 17ms collecting garbage
Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New62668
Fresh000
Picked101
Done000
Total63669
Accuracy
99.9%
Counts
69 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re)) #s(literal 1/2 binary64))
41.7%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
51.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))))))
53.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
54.7%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
53.5%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
Compiler

Compiled 222 to 170 computations (23.4% saved)

series157.0ms (3%)

Memory
38.9MiB live, 172.2MiB allocated; 27ms collecting garbage
Counts
32 → 78
Calls
Call 1
Inputs
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
#s(literal 2 binary64)
(sinh.f64 (neg.f64 im))
(neg.f64 im)
im
(sin.f64 re)
re
#s(literal 1/2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re))
#s(approx (sin re) re)
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(exp.f64 im)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
(*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re)))
#s(literal -1 binary64)
(*.f64 im (sin.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
(-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im))
#s(approx (exp (neg im)) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))))))
(*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))))
(*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))
#s(literal -1/12 binary64)
(pow.f64 re #s(literal 2 binary64))
Outputs
#s(approx (* (* (* 2 (sinh (neg im))) (sin re)) 1/2) (*.f64 #s(literal 1/2 binary64) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))))))
#s(approx (* (* (* 2 (sinh (neg im))) (sin re)) 1/2) (*.f64 re (fma.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))))
#s(approx (* (* (* 2 (sinh (neg im))) (sin re)) 1/2) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))))))))))
#s(approx (* (* (* 2 (sinh (neg im))) (sin re)) 1/2) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/240 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))))))))
#s(approx (* (* 2 (sinh (neg im))) (sin re)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))
#s(approx (* (* 2 (sinh (neg im))) (sin re)) (*.f64 re (-.f64 (+.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))
#s(approx (* (* 2 (sinh (neg im))) (sin re)) (*.f64 re (-.f64 (+.f64 (exp.f64 (neg.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))))) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))
#s(approx (* (* 2 (sinh (neg im))) (sin re)) (*.f64 re (-.f64 (+.f64 (exp.f64 (neg.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/120 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))))))))) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))
#s(approx (sin re) re)
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 re #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 #s(literal 1/240 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/240 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/12 binary64))))))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/240 binary64) (*.f64 #s(literal -1/10080 binary64) (pow.f64 re #s(literal 2 binary64))))) #s(literal 1/12 binary64))))))
#s(approx (* -1 (* im (sin re))) (*.f64 #s(literal -1 binary64) (*.f64 im re)))
#s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) im))))))
#s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal 1/6 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) im (*.f64 #s(literal 1/5040 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))))))
#s(approx (* im (sin re)) (*.f64 im re))
#s(approx (* im (sin re)) (*.f64 re (+.f64 im (*.f64 #s(literal -1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (* im (sin re)) (*.f64 re (+.f64 im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) im (*.f64 #s(literal 1/120 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (* im (sin re)) (*.f64 re (+.f64 im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/120 binary64) im))))))))
#s(approx (+ 1/2 (* -1/12 (pow re 2))) #s(literal 1/2 binary64))
#s(approx (+ 1/2 (* -1/12 (pow re 2))) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))))
#s(approx (* -1/12 (pow re 2)) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))))
#s(approx (pow re 2) (pow.f64 re #s(literal 2 binary64)))
#s(approx (* (* (* 2 (sinh (neg im))) (sin re)) 1/2) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))))))
#s(approx (* (* 2 (sinh (neg im))) (sin re)) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))
#s(approx (sin re) (sin.f64 re))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
#s(approx (* -1 (* im (sin re))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
#s(approx (* im (sin re)) (*.f64 im (sin.f64 re)))
#s(approx (* re (+ 1/2 (* -1/12 (pow re 2)))) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 3 binary64))))
#s(approx (* re (+ 1/2 (* -1/12 (pow re 2)))) (*.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 2 binary64)))) #s(literal 1/12 binary64))))
#s(approx (+ 1/2 (* -1/12 (pow re 2))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 2 binary64)))) #s(literal 1/12 binary64))))
#s(approx (* re (+ 1/2 (* -1/12 (pow re 2)))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (* (* (* 2 (sinh (neg im))) (sin re)) 1/2) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))
#s(approx (* (* (* 2 (sinh (neg im))) (sin re)) 1/2) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 re) (*.f64 #s(literal -1/120 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))))
#s(approx (* (* (* 2 (sinh (neg im))) (sin re)) 1/2) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) (sin.f64 re) (*.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))))))
#s(approx (* (* 2 (sinh (neg im))) (sin re)) (*.f64 #s(literal -2 binary64) (*.f64 im (sin.f64 re))))
#s(approx (* (* 2 (sinh (neg im))) (sin re)) (*.f64 im (fma.f64 #s(literal -2 binary64) (sin.f64 re) (*.f64 #s(literal -1/3 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))
#s(approx (* (* 2 (sinh (neg im))) (sin re)) (*.f64 im (fma.f64 #s(literal -2 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/3 binary64) (sin.f64 re) (*.f64 #s(literal -1/60 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))))
#s(approx (* (* 2 (sinh (neg im))) (sin re)) (*.f64 im (fma.f64 #s(literal -2 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/3 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/60 binary64) (sin.f64 re) (*.f64 #s(literal -1/2520 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))))))
#s(approx (* 2 (sinh (neg im))) (*.f64 #s(literal -2 binary64) im))
#s(approx (* 2 (sinh (neg im))) (*.f64 im (-.f64 (*.f64 #s(literal -1/3 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 2 binary64))))
#s(approx (* 2 (sinh (neg im))) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/60 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/3 binary64))) #s(literal 2 binary64))))
#s(approx (* 2 (sinh (neg im))) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/2520 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/60 binary64))) #s(literal 1/3 binary64))) #s(literal 2 binary64))))
#s(approx (sinh (neg im)) (*.f64 #s(literal -1 binary64) im))
#s(approx (sinh (neg im)) (*.f64 im (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64))))
#s(approx (sinh (neg im)) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/120 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/6 binary64))) #s(literal 1 binary64))))
#s(approx (sinh (neg im)) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/5040 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/120 binary64))) #s(literal 1/6 binary64))) #s(literal 1 binary64))))
#s(approx im im)
#s(approx (exp (neg im)) #s(literal 1 binary64))
#s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im)))
#s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)))))
#s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 im (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) im))) #s(literal 1 binary64)))))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im)))))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/6 binary64) im)))))))
#s(approx (* 2 (sinh (neg im))) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))))
#s(approx (sinh (neg im)) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))
#s(approx (- (exp (neg im)) (exp im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (exp (neg im)) (exp.f64 (neg.f64 im)))
#s(approx (exp im) (exp.f64 im))
#s(approx (* (* (* 2 (sinh (neg im))) (sin re)) 1/2) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))))
#s(approx (* (* 2 (sinh (neg im))) (sin re)) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 #s(literal -1 binary64) im))))))
#s(approx (* 2 (sinh (neg im))) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
#s(approx (sinh (neg im)) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 #s(literal -1 binary64) im))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (exp.f64 im)))))
#s(approx (- (exp (neg im)) (exp im)) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (exp.f64 im)))
#s(approx (exp (neg im)) (exp.f64 (*.f64 #s(literal -1 binary64) im)))
Calls

6 calls:

TimeVariablePoint
8.0ms
im
-inf
5.0ms
im
inf
3.0ms
re
0
3.0ms
re
inf
3.0ms
re
-inf

rewrite193.0ms (3.7%)

Memory
25.6MiB live, 204.6MiB allocated; 50ms collecting garbage
Counts
32 → 106
Calls
Call 1
Inputs
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
#s(literal 2 binary64)
(sinh.f64 (neg.f64 im))
(neg.f64 im)
im
(sin.f64 re)
re
#s(literal 1/2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re))
#s(approx (sin re) re)
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(exp.f64 im)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
(*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re)))
#s(literal -1 binary64)
(*.f64 im (sin.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
(-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im))
#s(approx (exp (neg im)) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))))))
(*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))))
(*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))
#s(literal -1/12 binary64)
(pow.f64 re #s(literal 2 binary64))
Outputs
(*.f64 (*.f64 #s(literal 2 binary64) #s(literal 1/2 binary64)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 1/2 binary64)) (sin.f64 re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (sin.f64 re))
(*.f64 (sin.f64 re) #s(literal 2 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
(*.f64 (sin.f64 (neg.f64 re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
(sin.f64 re)
re
(*.f64 re re)
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))
(*.f64 (pow.f64 re (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))) (pow.f64 re (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))))
#s(literal 1/2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re))
#s(approx (sin re) re)
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(approx (* (sin re) (* 2 1/2)) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
(*.f64 #s(literal 2 binary64) (sin.f64 re))
(*.f64 (sin.f64 re) #s(literal 2 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
(*.f64 (sin.f64 (neg.f64 re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) #s(literal -1 binary64))
#s(literal -1 binary64)
(*.f64 #s(literal 2 binary64) (sin.f64 re))
(*.f64 (sin.f64 re) #s(literal 2 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
(*.f64 (sin.f64 (neg.f64 re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) #s(literal -1 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx 2 #s(literal 2 binary64)) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
(*.f64 (sin.f64 re) #s(literal 1/2 binary64))
(-.f64 #s(approx 2 #s(literal 2 binary64)) #s(literal 2 binary64))
#s(approx 2 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re)))
(*.f64 re (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)))
(*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(*.f64 (fma.f64 (*.f64 re #s(literal 1/2 binary64)) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re)) (fma.f64 (*.f64 #s(literal -1/12 binary64) re) (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(*.f64 (fma.f64 (*.f64 re #s(literal 1/2 binary64)) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re)) (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)))
(*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re)) (/.f64 re (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)))
(*.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (*.f64 #s(literal -1/12 binary64) re) (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (/.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re)) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 1/2 binary64)) (*.f64 #s(literal -1/12 binary64) re) (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (/.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (fma.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 1/2 binary64)) (*.f64 #s(literal -1/12 binary64) re) (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)))))
(*.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (-.f64 (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re) (*.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 1/2 binary64)) (-.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 1/2 binary64)))))) (-.f64 (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 1/2 binary64)) (*.f64 #s(literal -1/12 binary64) re))))
(*.f64 #s(literal -1/12 binary64) re)
(*.f64 re #s(literal -1/12 binary64))
(*.f64 (*.f64 #s(literal -1/12 binary64) re) re)
(*.f64 re (*.f64 #s(literal -1/12 binary64) re))
(*.f64 (neg.f64 (*.f64 #s(literal -1/12 binary64) re)) (neg.f64 re))
#s(literal -1/12 binary64)
(neg.f64 (neg.f64 #s(literal -1/12 binary64)))
re
(*.f64 re re)
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))
(*.f64 (pow.f64 re (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))) (pow.f64 re (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))))

eval26.0ms (0.5%)

Memory
-17.1MiB live, 37.4MiB allocated; 18ms collecting garbage
Compiler

Compiled 3 962 to 735 computations (81.4% saved)

prune15.0ms (0.3%)

Memory
-24.3MiB live, 21.5MiB allocated; 3ms collecting garbage
Pruning

14 alts after pruning (12 fresh and 2 done)

PrunedKeptTotal
New15211163
Fresh011
Picked325
Done000
Total15514169
Accuracy
99.9%
Counts
169 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re)) #s(literal 1/2 binary64))
3.5%
(*.f64 (*.f64 (sin.f64 re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
3.5%
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 re)) #s(literal 1/2 binary64))
51.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))))))
38.6%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
35.8%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
3.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
3.4%
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
54.1%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
53.5%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
40.2%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))))
33.9%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
40.2%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))))))))
3.5%
#s(approx (* (sin re) (* 2 1/2)) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
Compiler

Compiled 450 to 359 computations (20.2% saved)

series269.0ms (5.2%)

Memory
-19.0MiB live, 144.0MiB allocated; 220ms collecting garbage
Counts
38 → 64
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64))
re
#s(literal -1/12 binary64)
#s(literal 1/2 binary64)
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re)))
#s(literal -1 binary64)
#s(approx (* im (sin re)) (*.f64 im re))
(*.f64 im re)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re)))
(fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))
(*.f64 #s(literal -1/12 binary64) re)
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re))
#s(approx (sin re) re)
(-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
(+.f64 #s(literal 1 binary64) im)
#s(literal 1 binary64)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))))
(*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))))))
(*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))
(*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))
#s(literal -1/6 binary64)
(pow.f64 re #s(literal 2 binary64))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 #s(literal 1/240 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/240 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/12 binary64))))))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/240 binary64) (*.f64 #s(literal -1/10080 binary64) (pow.f64 re #s(literal 2 binary64))))) #s(literal 1/12 binary64))))))
#s(approx (* (+ (* re -1/12) 1/2) re) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))))
#s(approx (+ (* re -1/12) 1/2) #s(literal 1/2 binary64))
#s(approx (+ (* re -1/12) 1/2) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re)))
#s(approx re re)
#s(approx (* -1 (* im (sin re))) (*.f64 #s(literal -1 binary64) (*.f64 im re)))
#s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) im))))))
#s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal 1/6 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) im (*.f64 #s(literal 1/5040 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))))))
#s(approx (* im (sin re)) (*.f64 im re))
#s(approx (* im (sin re)) (*.f64 re (+.f64 im (*.f64 #s(literal -1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (* im (sin re)) (*.f64 re (+.f64 im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) im (*.f64 #s(literal 1/120 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (* im (sin re)) (*.f64 re (+.f64 im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/120 binary64) im))))))))
#s(approx (* (* 1/2 (sin re)) 2) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) 2) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (* (* 1/2 (sin re)) 2) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 re #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))
#s(approx (* -1/12 re) (*.f64 #s(literal -1/12 binary64) re))
#s(approx (+ 1 (* -1/6 (pow re 2))) #s(literal 1 binary64))
#s(approx (+ 1 (* -1/6 (pow re 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))
#s(approx (* -1/6 (pow re 2)) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))
#s(approx (pow re 2) (pow.f64 re #s(literal 2 binary64)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
#s(approx (* (+ (* re -1/12) 1/2) re) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))))
#s(approx (* (+ (* re -1/12) 1/2) re) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)) #s(literal 1/12 binary64))))
#s(approx (+ (* re -1/12) 1/2) (*.f64 re (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)) #s(literal 1/12 binary64))))
#s(approx (* -1 (* im (sin re))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
#s(approx (* im (sin re)) (*.f64 im (sin.f64 re)))
#s(approx (* (* 1/2 (sin re)) 2) (sin.f64 re))
#s(approx (* re (+ 1 (* -1/6 (pow re 2)))) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 3 binary64))))
#s(approx (* re (+ 1 (* -1/6 (pow re 2)))) (*.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/6 binary64))))
#s(approx (+ 1 (* -1/6 (pow re 2))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/6 binary64))))
#s(approx (+ (* re -1/12) 1/2) (*.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re))))))
#s(approx (* re (+ 1 (* -1/6 (pow re 2)))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 re) (*.f64 #s(literal -1/120 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) (sin.f64 re) (*.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))))))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 #s(literal -2 binary64) im))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 im (-.f64 (*.f64 #s(literal -1/3 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 2 binary64))))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/60 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/3 binary64))) #s(literal 2 binary64))))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/2520 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/60 binary64))) #s(literal 1/3 binary64))) #s(literal 2 binary64))))
#s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im)))
#s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)))))
#s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 im (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) im))) #s(literal 1 binary64)))))
#s(approx (neg im) (*.f64 #s(literal -1 binary64) im))
#s(approx im im)
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im)))))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/6 binary64) im)))))))
#s(approx (- (exp (neg im)) (exp im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (exp (neg im)) (exp.f64 (neg.f64 im)))
#s(approx (exp im) (exp.f64 im))
#s(approx (+ 1 im) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) im))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (exp.f64 im)))))
#s(approx (- (exp (neg im)) (exp im)) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (exp.f64 im)))
#s(approx (exp (neg im)) (exp.f64 (*.f64 #s(literal -1 binary64) im)))
Calls

6 calls:

TimeVariablePoint
3.0ms
re
-inf
3.0ms
re
inf
2.0ms
re
0
2.0ms
im
-inf
2.0ms
im
inf

rewrite227.0ms (4.4%)

Memory
18.7MiB live, 261.3MiB allocated; 28ms collecting garbage
Counts
38 → 115
Calls
Call 1
Inputs
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64))
re
#s(literal -1/12 binary64)
#s(literal 1/2 binary64)
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re)))
#s(literal -1 binary64)
#s(approx (* im (sin re)) (*.f64 im re))
(*.f64 im re)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re)))
(fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))
(*.f64 #s(literal -1/12 binary64) re)
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re))
#s(approx (sin re) re)
(-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im)))
#s(approx (exp im) (+.f64 #s(literal 1 binary64) im))
(+.f64 #s(literal 1 binary64) im)
#s(literal 1 binary64)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))))
(*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))))))
(*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))
(*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))
#s(literal -1/6 binary64)
(pow.f64 re #s(literal 2 binary64))
Outputs
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
#s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re))
(*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(*.f64 (+.f64 #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)
(*.f64 re (+.f64 #s(literal -1/12 binary64) #s(literal 1/2 binary64)))
(*.f64 re (-.f64 #s(literal -1/12 binary64) #s(literal 1/2 binary64)))
(*.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (*.f64 #s(literal -1/12 binary64) re) (-.f64 #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)))
(*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (/.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 1/2 binary64)) (-.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 1/2 binary64))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) re) (-.f64 #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (/.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (fma.f64 (*.f64 #s(literal -1/12 binary64) re) (-.f64 #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)))))
(*.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (fma.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal -1/12 binary64) (pow.f64 (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (fma.f64 (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)) (fma.f64 (*.f64 #s(literal -1/12 binary64) re) (-.f64 #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/12 binary64) #s(literal -1/12 binary64)) re)))
re
(*.f64 #s(literal 2 binary64) re)
(*.f64 re #s(literal 2 binary64))
(*.f64 re re)
(*.f64 (pow.f64 re (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))) (pow.f64 re (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))))
#s(literal -1/12 binary64)
(neg.f64 (neg.f64 #s(literal -1/12 binary64)))
#s(literal 1/2 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(approx (* (sin re) 1/2) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
(*.f64 #s(literal -1 binary64) #s(approx (sin re) re))
#s(literal -1 binary64)
#s(approx (sin re) re)
re
(*.f64 #s(literal 2 binary64) re)
(*.f64 re #s(literal 2 binary64))
(*.f64 re re)
(*.f64 (pow.f64 re (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))) (pow.f64 re (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
#s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re))
(*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(*.f64 (+.f64 #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)
(*.f64 re (+.f64 #s(literal -1/12 binary64) #s(literal 1/2 binary64)))
(*.f64 re (-.f64 #s(literal -1/12 binary64) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1/12 binary64) re)
(*.f64 re #s(literal -1/12 binary64))
(*.f64 (*.f64 #s(literal -1/12 binary64) re) re)
(*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal -1/12 binary64) #s(literal 2 binary64)) re)
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re))
#s(approx (sin re) re)
(-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64)))
#s(approx 2 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(literal 2 binary64)
#s(literal 1 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 2 binary64) #s(literal -1 binary64))
#s(approx (* (sin re) 1/2) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re))))
(*.f64 #s(literal 2 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))
#s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) re) #s(literal 2 binary64))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (fma.f64 re #s(literal -1/6 binary64) re) #s(literal 2 binary64)) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (fma.f64 re #s(literal -1/6 binary64) re) #s(literal 2 binary64)))
(*.f64 #s(literal -1/6 binary64) re)
(*.f64 re #s(literal -1/6 binary64))
(*.f64 (*.f64 #s(literal -1/6 binary64) re) re)
(*.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 2 binary64))
(*.f64 (neg.f64 #s(literal -1/6 binary64)) re)
#s(literal -1/6 binary64)
(*.f64 #s(literal 2 binary64) #s(literal -1/6 binary64))
(*.f64 #s(literal -1/6 binary64) #s(literal 2 binary64))
(/.f64 #s(literal -1/6 binary64) #s(literal 2 binary64))
(neg.f64 (neg.f64 #s(literal -1/6 binary64)))
re
(*.f64 #s(literal 2 binary64) re)
(*.f64 re #s(literal 2 binary64))
(*.f64 re re)
(*.f64 (pow.f64 re (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))) (pow.f64 re (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))))

eval31.0ms (0.6%)

Memory
-21.3MiB live, 69.0MiB allocated; 11ms collecting garbage
Compiler

Compiled 3 759 to 778 computations (79.3% saved)

prune17.0ms (0.3%)

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

26 alts after pruning (23 fresh and 3 done)

PrunedKeptTotal
New12719146
Fresh347
Picked415
Done022
Total13426160
Accuracy
99.9%
Counts
160 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re)) #s(literal 1/2 binary64))
3.5%
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 re)) #s(literal 1/2 binary64))
51.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))))))
35.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) #s(approx (+ 1 im) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) im)))))))
20.5%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
36.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
35.8%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
17.7%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
3.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
3.4%
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
3.4%
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
41.0%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im))) (exp.f64 im)))
27.3%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
8.6%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
3.4%
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
53.5%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
25.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
27.3%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
27.2%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
40.2%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
27.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
27.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
24.6%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
33.9%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
3.4%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
3.5%
#s(approx (* (* 1/2 (sin re)) 2) (sin.f64 re))
Compiler

Compiled 938 to 735 computations (21.6% saved)

series206.0ms (4%)

Memory
-14.1MiB live, 226.1MiB allocated; 79ms collecting garbage
Counts
41 → 97
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))))))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
#s(literal 1/2 binary64)
(sin.f64 re)
re
(*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im))))))
(+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im))))
(+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64))
(exp.f64 (+.f64 im im))
(+.f64 im im)
im
#s(literal 1 binary64)
(exp.f64 (neg.f64 (+.f64 im im)))
(neg.f64 (+.f64 im im))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
#s(literal 2 binary64)
(sinh.f64 (neg.f64 im))
(neg.f64 im)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
(*.f64 #s(literal -1 binary64) #s(approx (sin re) re))
#s(literal -1 binary64)
#s(approx (sin re) re)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
(*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64)))))
#s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))
(*.f64 im (*.f64 re #s(literal 2 binary64)))
(*.f64 re #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64))))))
(*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))
#s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64))))
(*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))
(fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64))
#s(literal -1/6 binary64)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64))))))
(*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))
#s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64))))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))
(fma.f64 re #s(literal -1/6 binary64) re)
Outputs
#s(approx (* (* 1/2 (sin re)) (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))))) (*.f64 #s(literal 1/2 binary64) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))))))
#s(approx (* (* 1/2 (sin re)) (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))))) (*.f64 re (fma.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))))
#s(approx (* (* 1/2 (sin re)) (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))))) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))))))))))
#s(approx (* (* 1/2 (sin re)) (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))))) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/240 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))))))))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/240 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/12 binary64))))))
#s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/240 binary64) (*.f64 #s(literal -1/10080 binary64) (pow.f64 re #s(literal 2 binary64))))) #s(literal 1/12 binary64))))))
#s(approx (sin re) re)
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 re #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 #s(literal 1/240 binary64) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))))
#s(approx (* -1 (sin re)) (*.f64 #s(literal -1 binary64) re))
#s(approx (* -1 (sin re)) (*.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1 binary64))))
#s(approx (* -1 (sin re)) (*.f64 re (-.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/6 binary64) (*.f64 #s(literal -1/120 binary64) (pow.f64 re #s(literal 2 binary64))))) #s(literal 1 binary64))))
#s(approx (* -1 (sin re)) (*.f64 re (-.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/6 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/120 binary64))))) #s(literal 1 binary64))))
#s(approx (* -1 (* im (sin re))) (*.f64 #s(literal -1 binary64) (*.f64 im re)))
#s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) im))))))
#s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal 1/6 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) im (*.f64 #s(literal 1/5040 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))))))
#s(approx (* im (sin re)) (*.f64 im re))
#s(approx (* im (sin re)) (*.f64 re (+.f64 im (*.f64 #s(literal -1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (* im (sin re)) (*.f64 re (+.f64 im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) im (*.f64 #s(literal 1/120 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (* im (sin re)) (*.f64 re (+.f64 im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/120 binary64) im))))))))
#s(approx (* im (* re 2)) (*.f64 #s(literal 2 binary64) (*.f64 im re)))
#s(approx (* re 2) (*.f64 #s(literal 2 binary64) re))
#s(approx (* re (+ (* re -1/6) 2)) (*.f64 re (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -1/6 binary64) re))))
#s(approx (+ (* re -1/6) 2) #s(literal 2 binary64))
#s(approx (+ (* re -1/6) 2) (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -1/6 binary64) re)))
#s(approx (* (+ (* re -1/6) re) (+ (* re -1/6) 2)) (*.f64 #s(literal 5/3 binary64) re))
#s(approx (* (+ (* re -1/6) re) (+ (* re -1/6) 2)) (*.f64 re (+.f64 #s(literal 5/3 binary64) (*.f64 #s(literal -5/36 binary64) re))))
#s(approx (+ (* re -1/6) re) (*.f64 #s(literal 5/6 binary64) re))
#s(approx (* (* 1/2 (sin re)) (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))))))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
#s(approx (sin re) (sin.f64 re))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
#s(approx (* -1 (sin re)) (*.f64 #s(literal -1 binary64) (sin.f64 re)))
#s(approx (* -1 (* im (sin re))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
#s(approx (* im (sin re)) (*.f64 im (sin.f64 re)))
#s(approx (* re (+ (* re -1/6) 2)) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))
#s(approx (* re (+ (* re -1/6) 2)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) re)) #s(literal 1/6 binary64))))
#s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re))
#s(approx (+ (* re -1/6) 2) (*.f64 re (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) re)) #s(literal 1/6 binary64))))
#s(approx (* (+ (* re -1/6) re) (+ (* re -1/6) 2)) (*.f64 #s(literal -5/36 binary64) (pow.f64 re #s(literal 2 binary64))))
#s(approx (* (+ (* re -1/6) re) (+ (* re -1/6) 2)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 5/3 binary64) (/.f64 #s(literal 1 binary64) re)) #s(literal 5/36 binary64))))
#s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 1/6 binary64) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))))) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))
#s(approx (* (* 1/2 (sin re)) (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))))) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 re) (*.f64 #s(literal -1/120 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))))
#s(approx (* (* 1/2 (sin re)) (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))))) (*.f64 im (fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) (sin.f64 re) (*.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))))))))
#s(approx (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))))) (*.f64 #s(literal -2 binary64) im))
#s(approx (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))))) (*.f64 im (-.f64 (*.f64 #s(literal -1/3 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 2 binary64))))
#s(approx (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))))) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/60 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/3 binary64))) #s(literal 2 binary64))))
#s(approx (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))))) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/2520 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/60 binary64))) #s(literal 1/3 binary64))) #s(literal 2 binary64))))
#s(approx (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) #s(literal 3 binary64))
#s(approx (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (+.f64 #s(literal 3 binary64) (*.f64 #s(literal 4 binary64) (pow.f64 im #s(literal 2 binary64)))))
#s(approx (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (+.f64 #s(literal 3 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 4/3 binary64) (pow.f64 im #s(literal 2 binary64)))))))
#s(approx (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (+.f64 #s(literal 3 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 4 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 4/3 binary64) (*.f64 #s(literal 8/45 binary64) (pow.f64 im #s(literal 2 binary64)))))))))
#s(approx (+ (exp (+ im im)) 1) (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) im)))
#s(approx (+ (exp (+ im im)) 1) (+.f64 #s(literal 2 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) im)))))
#s(approx (+ (exp (+ im im)) 1) (+.f64 #s(literal 2 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 4/3 binary64) im)))))))
#s(approx (exp (+ im im)) #s(literal 1 binary64))
#s(approx (exp (+ im im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) im)))
#s(approx (exp (+ im im)) (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) im)))))
#s(approx (exp (+ im im)) (+.f64 #s(literal 1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 4/3 binary64) im)))))))
#s(approx (+ im im) (*.f64 #s(literal 2 binary64) im))
#s(approx im im)
#s(approx (exp (neg (+ im im))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -2 binary64) im)))
#s(approx (exp (neg (+ im im))) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 2 binary64)))))
#s(approx (exp (neg (+ im im))) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -4/3 binary64) im))) #s(literal 2 binary64)))))
#s(approx (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))) (*.f64 #s(literal -2/3 binary64) im))
#s(approx (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))) (*.f64 im (-.f64 (*.f64 #s(literal 7/9 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 2/3 binary64))))
#s(approx (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 7/9 binary64) (*.f64 #s(literal -403/540 binary64) (pow.f64 im #s(literal 2 binary64))))) #s(literal 2/3 binary64))))
#s(approx (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 7/9 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 5207/7560 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 403/540 binary64))))) #s(literal 2/3 binary64))))
#s(approx (sinh (neg im)) (*.f64 #s(literal -1 binary64) im))
#s(approx (sinh (neg im)) (*.f64 im (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64))))
#s(approx (sinh (neg im)) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/120 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/6 binary64))) #s(literal 1 binary64))))
#s(approx (sinh (neg im)) (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/5040 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/120 binary64))) #s(literal 1/6 binary64))) #s(literal 1 binary64))))
#s(approx (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))))) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))))
#s(approx (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (+.f64 #s(literal 1 binary64) (+.f64 (exp.f64 (neg.f64 (*.f64 #s(literal 2 binary64) im))) (exp.f64 (*.f64 #s(literal 2 binary64) im)))))
#s(approx (+ (exp (+ im im)) 1) (+.f64 #s(literal 1 binary64) (exp.f64 (*.f64 #s(literal 2 binary64) im))))
#s(approx (exp (+ im im)) (exp.f64 (*.f64 #s(literal 2 binary64) im)))
#s(approx (exp (neg (+ im im))) (exp.f64 (neg.f64 (*.f64 #s(literal 2 binary64) im))))
#s(approx (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))) (+.f64 #s(literal 1 binary64) (+.f64 (exp.f64 (neg.f64 (*.f64 #s(literal 2 binary64) im))) (exp.f64 (*.f64 #s(literal 2 binary64) im))))))
#s(approx (sinh (neg im)) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 im)) (/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))))))
#s(approx (* (* 1/2 (sin re)) (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))))
#s(approx (* (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))))) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
#s(approx (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) (+.f64 #s(literal 1 binary64) (+.f64 (exp.f64 (neg.f64 (*.f64 #s(literal -2 binary64) im))) (exp.f64 (*.f64 #s(literal -2 binary64) im)))))
#s(approx (+ (exp (+ im im)) 1) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (*.f64 #s(literal -2 binary64) im)))))
#s(approx (exp (+ im im)) (exp.f64 (neg.f64 (*.f64 #s(literal -2 binary64) im))))
#s(approx (exp (neg (+ im im))) (exp.f64 (*.f64 #s(literal -2 binary64) im)))
#s(approx (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))) (/.f64 (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 #s(literal -1 binary64) im)))) (+.f64 #s(literal 1 binary64) (+.f64 (exp.f64 (neg.f64 (*.f64 #s(literal -2 binary64) im))) (exp.f64 (*.f64 #s(literal -2 binary64) im))))))
#s(approx (sinh (neg im)) (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 #s(literal -1 binary64) im))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (-.f64 (exp.f64 (*.f64 #s(literal -1 binary64) im)) (exp.f64 im)))))
Calls

6 calls:

TimeVariablePoint
25.0ms
im
-inf
20.0ms
im
inf
3.0ms
re
-inf
3.0ms
re
inf
3.0ms
im
0

rewrite211.0ms (4.1%)

Memory
-9.1MiB live, 182.3MiB allocated; 74ms collecting garbage
Counts
41 → 134
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))))))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
#s(literal 1/2 binary64)
(sin.f64 re)
re
(*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im))))))
(+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im))))
(+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64))
(exp.f64 (+.f64 im im))
(+.f64 im im)
im
#s(literal 1 binary64)
(exp.f64 (neg.f64 (+.f64 im im)))
(neg.f64 (+.f64 im im))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
#s(literal 2 binary64)
(sinh.f64 (neg.f64 im))
(neg.f64 im)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
(*.f64 #s(literal -1 binary64) #s(approx (sin re) re))
#s(literal -1 binary64)
#s(approx (sin re) re)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
(*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64)))))
#s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))
(*.f64 im (*.f64 re #s(literal 2 binary64)))
(*.f64 re #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64))))))
(*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))
#s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64))))
(*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))
(fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64))
#s(literal -1/6 binary64)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64))))))
(*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))
#s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64))))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))
(fma.f64 re #s(literal -1/6 binary64) re)
Outputs
(*.f64 (*.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(literal 1 binary64))
(*.f64 (*.f64 (sin.f64 re) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sin.f64 re) #s(literal 1 binary64)) (*.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
(*.f64 (sin.f64 re) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 (sin.f64 re) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (cos.f64 (PI.f64))) (*.f64 (cos.f64 re) (sin.f64 (PI.f64))))
(-.f64 (*.f64 (cos.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 1 binary64)))) (*.f64 (sin.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 1 binary64)))))
(cos.f64 (+.f64 (/.f64 (PI.f64) #s(literal 1 binary64)) re))
re
(*.f64 re #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) re)
(+.f64 re re)
(-.f64 re re)
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
im
(*.f64 #s(literal 1 binary64) #s(literal -1 binary64))
#s(approx (* 2 (* 1/2 (sin re))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
(*.f64 #s(literal -1 binary64) #s(approx (sin re) re))
#s(literal -1 binary64)
#s(approx (sin re) re)
#s(approx (* 2 (* 1/2 (sin re))) (*.f64 #s(literal -1 binary64) #s(approx (* (sin re) 2) re)))
(*.f64 #s(literal -1 binary64) #s(approx (* (sin re) 2) re))
#s(approx (* (sin re) 2) re)
re
(*.f64 re #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) re)
(+.f64 re re)
(-.f64 re re)
re
(*.f64 re #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) re)
(+.f64 re re)
(-.f64 re re)
#s(approx (* 2 (* 1/2 (sin re))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re))))
(*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))
#s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)
(*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 (pow.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)) (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))) (pow.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)) (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))))
(*.f64 (fabs.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64))) (fabs.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64))))
#s(literal -1/6 binary64)
#s(approx (* 2 (* 1/2 (sin re))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re))))
(*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))
#s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)
(*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))
(*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)

eval64.0ms (1.2%)

Memory
1.6MiB live, 41.8MiB allocated; 30ms collecting garbage
Compiler

Compiled 6 095 to 977 computations (84% saved)

prune30.0ms (0.6%)

Memory
-0.7MiB live, 42.4MiB allocated; 15ms collecting garbage
Pruning

32 alts after pruning (27 fresh and 5 done)

PrunedKeptTotal
New14813161
Fresh41418
Picked325
Done033
Total15532187
Accuracy
99.9%
Counts
187 → 32
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re)) #s(literal 1/2 binary64))
3.5%
(*.f64 (*.f64 (sin.f64 re) #s(literal 1 binary64)) #s(literal 1/2 binary64))
99.6%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) #s(approx (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))) (*.f64 #s(literal -2/3 binary64) im))))
99.9%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 #s(approx (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) #s(literal 3 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(approx (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) #s(literal 3 binary64)))))
20.5%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
36.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
35.8%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
3.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
3.4%
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
41.0%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im))) (exp.f64 im)))
27.3%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
8.6%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
3.4%
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
53.5%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
25.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
24.1%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
24.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
27.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (+.f64 re re) (fma.f64 (+.f64 re re) #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
25.5%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
40.2%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
27.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
25.5%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
3.4%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
24.4%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
27.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
24.6%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
33.9%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
17.7%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
3.4%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
3.4%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
3.4%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (sin re)) (*.f64 #s(literal -1 binary64) (sin.f64 re))))
3.5%
#s(approx (* (* 1/2 (sin re)) 2) (sin.f64 re))
Compiler

Compiled 680 to 522 computations (23.2% saved)

regimes727.0ms (14%)

Memory
31.0MiB live, 609.4MiB allocated; 158ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
3 → 1
9 → 1
13 → 2
17 → 2
18 → 3
21 → 3
23 → 3
24 → 3
27 → 2
31 → 3
38 → 3
42 → 2
43 → 3
44 → 3
45 → 3
50 → 1
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
Call 2
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
Call 3
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
Call 4
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
Call 5
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
Call 6
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
Call 7
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
Call 8
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
Call 9
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
Call 10
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (+.f64 re re) (fma.f64 (+.f64 re re) #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
Call 11
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (+.f64 re re) (fma.f64 (+.f64 re re) #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) #s(approx (+ 1 im) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) im)))))))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
Call 12
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (+.f64 re re) (fma.f64 (+.f64 re re) #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) #s(approx (+ 1 im) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) im)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im))) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (* (* 1/2 (sin re)) 2) (sin.f64 re))
#s(approx (* (sin re) (* 2 1/2)) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (sin re)) (*.f64 #s(literal -1 binary64) (sin.f64 re))))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im))) (exp.f64 im)))
Call 13
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (+.f64 re re) (fma.f64 (+.f64 re re) #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) #s(approx (+ 1 im) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) im)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im))) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (* (* 1/2 (sin re)) 2) (sin.f64 re))
#s(approx (* (sin re) (* 2 1/2)) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (sin re)) (*.f64 #s(literal -1 binary64) (sin.f64 re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (sin.f64 re) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sin.f64 re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 re)) #s(literal 1/2 binary64))
Outputs
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
Call 14
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (+.f64 re re) (fma.f64 (+.f64 re re) #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) #s(approx (+ 1 im) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) im)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im))) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (* (* 1/2 (sin re)) 2) (sin.f64 re))
#s(approx (* (sin re) (* 2 1/2)) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (sin re)) (*.f64 #s(literal -1 binary64) (sin.f64 re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (sin.f64 re) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sin.f64 re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 re)) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im))) (exp.f64 im)))
Call 15
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (+.f64 re re) (fma.f64 (+.f64 re re) #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) #s(approx (+ 1 im) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) im)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im))) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (* (* 1/2 (sin re)) 2) (sin.f64 re))
#s(approx (* (sin re) (* 2 1/2)) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (sin re)) (*.f64 #s(literal -1 binary64) (sin.f64 re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (sin.f64 re) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sin.f64 re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 re)) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
Call 16
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (+.f64 re re) (fma.f64 (+.f64 re re) #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) #s(approx (+ 1 im) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) im)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im))) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (* (* 1/2 (sin re)) 2) (sin.f64 re))
#s(approx (* (sin re) (* 2 1/2)) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (sin re)) (*.f64 #s(literal -1 binary64) (sin.f64 re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (sin.f64 re) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sin.f64 re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 re)) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
Call 17
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (-.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (sin re) (+.f64 re re))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im re))))
(*.f64 #s(approx (* 1/2 (sin re)) #s(approx (+ (* re 1/2) (* -1/12 re)) (*.f64 #s(literal 5/12 binary64) re))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* (sin re) 1/2) (*.f64 (-.f64 #s(literal 1/2 binary64) #s(literal -1/12 binary64)) re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(literal 2 binary64) #s(approx 2 #s(literal 2 binary64))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 re re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (fma.f64 re #s(literal -1/6 binary64) re)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(literal 2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) im)
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) re))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) re)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) #s(approx (* im (sin re)) (*.f64 im (*.f64 (+.f64 re re) #s(literal 2 binary64))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re #s(approx (+ (* re -1/6) 2) (*.f64 #s(literal -1/6 binary64) re)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) re) #s(literal 2 binary64)))) #s(literal 2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (-.f64 #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (*.f64 (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (*.f64 re re) (fma.f64 re #s(literal -1/6 binary64) re))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/6 binary64) re) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (fma.f64 re #s(literal -1/6 binary64) re) (fma.f64 re #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 (+.f64 re re) (fma.f64 (+.f64 re re) #s(literal -1/6 binary64) #s(literal 2 binary64)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx 2 #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))) #s(approx (exp im) (+.f64 #s(literal 1 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) #s(approx (exp im) #s(approx (+ 1 im) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) im)))))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 #s(approx (exp (neg im)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) im))) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (* im (sin re))) (*.f64 re (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 1/6 binary64) (*.f64 im (pow.f64 re #s(literal 2 binary64))))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sin re) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im #s(approx (sin re) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (* (* 1/2 (sin re)) 2) (sin.f64 re))
#s(approx (* (sin re) (* 2 1/2)) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* -1 (sin re)) (*.f64 #s(literal -1 binary64) (sin.f64 re))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 re #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (sin.f64 re) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sin.f64 re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 re)) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(literal -1 binary64) (*.f64 im (sin.f64 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx (exp (neg im)) #s(literal 1 binary64)) (exp.f64 im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64)))))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 #s(approx (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) #s(literal 3 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(approx (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im)))) #s(literal 3 binary64)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) #s(approx (/ (* 2 (sinh (neg im))) (+ (+ (exp (+ im im)) 1) (exp (neg (+ im im))))) (*.f64 #s(literal -2/3 binary64) im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (+.f64 (+.f64 (exp.f64 (+.f64 im im)) #s(literal 1 binary64)) (exp.f64 (neg.f64 (+.f64 im im)))))))
Outputs
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re)) #s(literal 1/2 binary64))
Calls

71 calls:

57.0ms
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
34.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
29.0ms
im
27.0ms
im
27.0ms
re
Results
AccuracySegmentsBranch
3.4%1(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
3.4%1(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
3.4%1im
3.4%1re
3.4%1(sin.f64 re)
3.4%1(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
17.7%1(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
17.7%1re
17.7%1(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
17.7%1(sin.f64 re)
17.7%1(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
17.7%1im
33.9%1im
33.9%1re
33.9%1(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
33.9%1(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
33.9%1(sin.f64 re)
33.9%1(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
42.0%2(sin.f64 re)
42.0%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
37.9%2im
42.0%2(sin.f64 re)
42.0%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
47.8%3(sin.f64 re)
47.8%3(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
47.8%3(sin.f64 re)
47.8%3(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
39.8%3re
40.7%3(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
47.8%3(sin.f64 re)
47.8%3(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
48.1%3(sin.f64 re)
48.1%3(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
40.2%1(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
42.9%2im
55.9%5(sin.f64 re)
55.9%5(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
47.9%3re
52.3%2(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
52.3%2im
57.3%5(sin.f64 re)
57.3%5(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
62.7%3(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
48.1%3(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
62.7%3im
64.7%3im
64.3%3(sin.f64 re)
64.3%3(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
56.9%2re
65.3%2(sin.f64 re)
65.3%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
64.7%3(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
64.7%3(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
64.7%3im
88.8%3(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
88.8%3(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
88.8%3im
92.8%3(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
92.8%3im
94.7%3(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
68.4%2(sin.f64 re)
68.4%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
90.8%3(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
68.1%3re
94.7%3im
99.9%1(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
99.9%1(sin.f64 re)
99.9%1(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
99.9%1(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
99.9%1re
99.9%1im
Compiler

Compiled 1 285 to 575 computations (55.3% saved)

bsearch87.0ms (1.7%)

Memory
-41.1MiB live, 59.5MiB allocated; 66ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
61.0ms
2.4958974855817202e-8
3573.531024498557
22.0ms
-6035039.395367483
-3.095828172001074e-5
Samples
26.0ms320×0valid
Compiler

Compiled 714 to 655 computations (8.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 19.0ms
ival-sin: 9.0ms (46.5% of total)
ival-exp: 6.0ms (31% of total)
ival-mult!: 3.0ms (15.5% of total)
ival-sub!: 1.0ms (5.2% of total)
ival-neg: 1.0ms (5.2% of total)
adjust: 0.0ms (0% of total)

bsearch16.0ms (0.3%)

Memory
24.3MiB live, 24.3MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
2.4958974855817202e-8
3573.531024498557
13.0ms
-6035039.395367483
-3.095828172001074e-5
Samples
9.0ms112×0valid
Compiler

Compiled 644 to 605 computations (6.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-exp: 2.0ms (32.9% of total)
ival-sin: 2.0ms (32.9% of total)
ival-mult!: 1.0ms (16.5% of total)
ival-sub!: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-neg: 0.0ms (0% of total)

bsearch24.0ms (0.5%)

Memory
-21.5MiB live, 25.7MiB allocated; 10ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
21.0ms
2.4958974855817202e-8
3573.531024498557
1.0ms
-6035039.395367483
-3.095828172001074e-5
Samples
15.0ms128×0valid
Compiler

Compiled 754 to 685 computations (9.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-sin: 8.0ms (64.3% of total)
ival-exp: 2.0ms (16.1% of total)
ival-neg: 1.0ms (8% of total)
ival-mult!: 1.0ms (8% of total)
ival-sub!: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)

bsearch0.0ms (0%)

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

Compiled 14 to 15 computations (-7.1% saved)

bsearch47.0ms (0.9%)

Memory
28.3MiB live, 28.3MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
32.0ms
2.4958974855817202e-8
3573.531024498557
12.0ms
-6035039.395367483
-3.095828172001074e-5
Samples
33.0ms192×0valid
Compiler

Compiled 834 to 705 computations (15.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 28.0ms
ival-sin: 21.0ms (74.7% of total)
ival-exp: 4.0ms (14.2% of total)
ival-mult!: 2.0ms (7.1% of total)
ival-sub!: 1.0ms (3.6% of total)
ival-neg: 1.0ms (3.6% of total)
adjust: 0.0ms (0% of total)

bsearch4.0ms (0.1%)

Memory
2.0MiB live, 2.0MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
2.4958974855817202e-8
3573.531024498557
2.0ms
-6035039.395367483
-3.095828172001074e-5
Compiler

Compiled 744 to 635 computations (14.7% saved)

bsearch29.0ms (0.6%)

Memory
-23.0MiB live, 23.2MiB allocated; 7ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
26.0ms
38435788.844413064
9.690670787634385e+30
Samples
14.0ms176×0valid
Compiler

Compiled 487 to 411 computations (15.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-sin: 5.0ms (49.7% of total)
ival-exp: 2.0ms (19.9% of total)
ival-mult!: 2.0ms (19.9% of total)
ival-neg: 1.0ms (9.9% of total)
ival-sub!: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.497259291698892e-5
0.018251074902957177
0.0ms
-0.038896312634074046
-0.02924581282482856
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
2.8MiB live, 2.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.053054026596330975
0.05499505670701153
0.0ms
-9.245190522049489e-26
-1.776952733011297e-34
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.053054026596330975
0.05499505670701153
0.0ms
-9.245190522049489e-26
-1.776952733011297e-34
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.053054026596330975
0.05499505670701153
0.0ms
-0.02924581282482856
-1.0121158115555875e-12
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.053054026596330975
0.05499505670701153
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

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

Compiled 14 to 15 computations (-7.1% saved)

derivations6.0ms (0.1%)

Memory
9.3MiB live, 9.3MiB allocated; 0ms collecting garbage
Stop Event
fuel
Compiler

Compiled 865 to 142 computations (83.6% saved)

preprocess185.0ms (3.6%)

Memory
-21.0MiB live, 309.9MiB allocated; 48ms collecting garbage
Compiler

Compiled 876 to 152 computations (82.6% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...