rsin B (should all be same)

Time bar (total: 4.5s)

start0.0ms (0%)

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

analyze223.0ms (5%)

Memory
-8.4MiB live, 225.4MiB allocated; 28ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
12.5%12.5%87.4%0.1%0%0%0%7
12.5%12.5%87.4%0.1%0%0%0%8
18.8%18.7%81.1%0.1%0%0%0%9
21.9%21.8%78%0.1%0%0%0%10
21.9%21.8%78%0.1%0%0%0%11
23.4%23.4%76.5%0.1%0%0%0%12
Compiler

Compiled 11 to 10 computations (9.1% saved)

sample1.3s (28.4%)

Memory
46.4MiB live, 1 133.3MiB allocated; 124ms collecting garbage
Samples
869.0ms6 032×1valid
121.0ms2 224×0valid
Precisions
Click to see histograms. Total time spent on operations: 748.0ms
ival-cos: 262.0ms (35% of total)
ival-sin: 190.0ms (25.4% of total)
adjust: 129.0ms (17.3% of total)
ival-mult!: 69.0ms (9.2% of total)
ival-div!: 56.0ms (7.5% of total)
ival-add!: 42.0ms (5.6% of total)
Bogosity

preprocess61.0ms (1.4%)

Memory
-17.8MiB live, 26.3MiB allocated; 7ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03895
117793
279993
3526893
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
74.7%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Symmetry

(negabs r)

Compiler

Compiled 16 to 16 computations (0% saved)

series25.0ms (0.6%)

Memory
19.4MiB live, 19.4MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02751222
Stop Event
iter-limit
Counts
8 → 45
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
r
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(sin.f64 b)
b
(cos.f64 (+.f64 a b))
(+.f64 a b)
a
Outputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 a b))))
#s(approx r r)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (+.f64 (/.f64 (*.f64 a (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64)))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (cos.f64 b)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 b)))
#s(approx (/ (sin b) (cos (+ a b))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (sin.f64 b) (cos.f64 b))))
#s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b))))) (cos.f64 b)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (sin.f64 b) (cos.f64 b))))
#s(approx (cos (+ a b)) (cos.f64 b))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 a (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 #s(literal 1/6 binary64) (*.f64 a (sin.f64 b))))) (sin.f64 b)))))
#s(approx (+ a b) b)
#s(approx (+ a b) (+.f64 a b))
#s(approx a a)
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (cos (+ a b)) (cos.f64 (+.f64 a b)))
#s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (cos (+ a b)) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a))))
#s(approx (+ a b) (*.f64 #s(literal -1 binary64) (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 b a)) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (+.f64 (/.f64 r (cos.f64 a)) (/.f64 (*.f64 b (*.f64 r (sin.f64 a))) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (cos.f64 a)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))) (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 b (+.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (/.f64 (*.f64 b (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (cos.f64 a)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 b #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 b #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (cos (+ a b)) (cos.f64 a))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 b (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 #s(literal 1/6 binary64) (*.f64 b (sin.f64 a))))) (sin.f64 a)))))
#s(approx (sin b) (sin.f64 b))
#s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
#s(approx (cos (+ a b)) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b))))
#s(approx (+ a b) (*.f64 #s(literal -1 binary64) (*.f64 b (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 a b)) #s(literal 1 binary64)))))
Calls

9 calls:

TimeVariablePointExpression
3.0ms
b
@inf
((* r (/ (sin b) (cos (+ a b)))) r (/ (sin b) (cos (+ a b))) (sin b) b (cos (+ a b)) (+ a b) a)
2.0ms
a
@0
((* r (/ (sin b) (cos (+ a b)))) r (/ (sin b) (cos (+ a b))) (sin b) b (cos (+ a b)) (+ a b) a)
2.0ms
b
@0
((* r (/ (sin b) (cos (+ a b)))) r (/ (sin b) (cos (+ a b))) (sin b) b (cos (+ a b)) (+ a b) a)
2.0ms
r
@0
((* r (/ (sin b) (cos (+ a b)))) r (/ (sin b) (cos (+ a b))) (sin b) b (cos (+ a b)) (+ a b) a)
2.0ms
r
@inf
((* r (/ (sin b) (cos (+ a b)))) r (/ (sin b) (cos (+ a b))) (sin b) b (cos (+ a b)) (+ a b) a)

rewrite233.0ms (5.2%)

Memory
10.7MiB live, 159.9MiB allocated; 14ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0828
01328
15828
239528
3357128
0940428
13154928
Stop Event
saturated
node-limit
iter-limit
Counts
8 → 117
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
r
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(sin.f64 b)
b
(cos.f64 (+.f64 a b))
(+.f64 a b)
a
Outputs
(*.f64 (*.f64 (*.f64 (sin.f64 b) r) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(*.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 (neg.f64 (sin.f64 b)) (*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))) r))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 r (neg.f64 (cos.f64 (+.f64 a b)))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 (sin.f64 b) (/.f64 r (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (*.f64 (sin.f64 b) r) #s(literal -1 binary64)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (*.f64 (sin.f64 b) r) #s(literal 1 binary64)) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 (*.f64 (neg.f64 r) (sin.f64 b))) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(neg.f64 (*.f64 (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 a b))) r))
(neg.f64 (*.f64 r (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 a b)))))
(neg.f64 (/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 a b)))))
r
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 b))) (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))) (neg.f64 (sin.f64 b)))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) #s(literal 1 binary64))
(*.f64 (sin.f64 b) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 b))) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (neg.f64 (sin.f64 b)) #s(literal 1 binary64)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) #s(literal -1 binary64)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 a b)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 a b))))
(*.f64 #s(literal 1 binary64) (sin.f64 b))
(*.f64 (sin.f64 b) #s(literal 1 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (neg.f64 (+.f64 (PI.f64) b)))) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (neg.f64 (+.f64 (PI.f64) b))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (+.f64 (+.f64 (PI.f64) b) (PI.f64)))) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 (+.f64 (PI.f64) b) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (+.f64 (neg.f64 b) (PI.f64)))) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 (neg.f64 b) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) b)) (neg.f64 (sin.f64 b))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) b)) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) b)) (*.f64 #s(literal 1/2 binary64) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) b) (PI.f64)) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) b) (PI.f64)) (*.f64 #s(literal 1/2 binary64) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 b) (PI.f64)) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 (+.f64 (neg.f64 b) (PI.f64)) (*.f64 #s(literal 1/2 binary64) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (neg.f64 (sin.f64 b))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (+.f64 (+.f64 (PI.f64) b) (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 (+.f64 (PI.f64) b) (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) (PI.f64)))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) (PI.f64))))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (sin.f64 b)))
(sin.f64 (neg.f64 (+.f64 (PI.f64) b)))
(sin.f64 (+.f64 (+.f64 (PI.f64) b) (PI.f64)))
(sin.f64 (+.f64 (neg.f64 b) (PI.f64)))
(sin.f64 b)
(cos.f64 (+.f64 (+.f64 (PI.f64) b) (*.f64 #s(literal 1/2 binary64) (PI.f64))))
(cos.f64 (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64))))
(cos.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) (PI.f64)))
b
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) #s(literal 2 binary64)) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))))) #s(literal 4 binary64))
(neg.f64 (neg.f64 (cos.f64 (+.f64 a b))))
(sin.f64 (neg.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 (PI.f64) (+.f64 a b)))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 (+.f64 a b))) (*.f64 #s(literal 1/2 binary64) (PI.f64))))
(sin.f64 (+.f64 (-.f64 (*.f64 (PI.f64) #s(literal -1/2 binary64)) (+.f64 a b)) (PI.f64)))
(sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 (PI.f64) (+.f64 a b))) (PI.f64)))
(sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 (neg.f64 a) b)))
(sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (fabs.f64 (+.f64 a b))))
(sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))
(fma.f64 (sin.f64 (-.f64 (neg.f64 a) b)) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (sin.f64 (fabs.f64 (+.f64 a b))) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(fma.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(fma.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))
(-.f64 (*.f64 (sin.f64 a) (cos.f64 (-.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (*.f64 (cos.f64 a) (sin.f64 (-.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 (neg.f64 (cos.f64 (+.f64 a b))) #s(literal 1 binary64)))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (neg.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)))))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (PI.f64) #s(literal -1/2 binary64)))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 a)) (neg.f64 (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (neg.f64 (sin.f64 a))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (neg.f64 (neg.f64 (fabs.f64 (+.f64 a b)))))
(cos.f64 (+.f64 (-.f64 (*.f64 (PI.f64) #s(literal -1/2 binary64)) (+.f64 a b)) (*.f64 #s(literal 1/2 binary64) (PI.f64))))
(cos.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 (PI.f64) (+.f64 a b))) (*.f64 #s(literal 1/2 binary64) (PI.f64))))
(cos.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b))) (PI.f64)))
(cos.f64 (+.f64 (-.f64 (neg.f64 b) (-.f64 a (PI.f64))) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (fabs.f64 (+.f64 a b)) (PI.f64)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (PI.f64) (+.f64 a b)) (PI.f64)))
(cos.f64 (neg.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (-.f64 (neg.f64 a) b))
(cos.f64 (fabs.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 a) b)) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 (sin.f64 (fabs.f64 (+.f64 a b))) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(*.f64 (+.f64 a b) #s(literal 1 binary64))
(neg.f64 (-.f64 (neg.f64 a) b))
(-.f64 a (neg.f64 b))
(-.f64 b (neg.f64 a))
(+.f64 (neg.f64 (neg.f64 a)) b)
(+.f64 a b)
(+.f64 b (neg.f64 (neg.f64 a)))
(+.f64 b a)
a

eval19.0ms (0.4%)

Memory
-12.2MiB live, 33.5MiB allocated; 3ms collecting garbage
Compiler

Compiled 1 723 to 750 computations (56.5% saved)

prune17.0ms (0.4%)

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

25 alts after pruning (25 fresh and 0 done)

PrunedKeptTotal
New12925154
Fresh000
Picked101
Done000
Total13025155
Accuracy
99.7%
Counts
155 → 25
Alt Table
Click to see full alt table
StatusAccuracyProgram
74.7%
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
74.8%
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
74.7%
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
74.8%
(*.f64 (neg.f64 (sin.f64 b)) (*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))) r))
8.3%
(*.f64 r (/.f64 (sin.f64 (+.f64 (neg.f64 b) (PI.f64))) (cos.f64 (+.f64 a b))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
38.5%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 (neg.f64 a) b)))))
39.0%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
56.4%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
62.6%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a)))))))
56.9%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
54.2%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))))
54.8%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))))
50.2%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
51.2%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
54.6%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
9.6%
(*.f64 r (/.f64 (cos.f64 (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 a b))))
49.3%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
74.7%
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b)))
49.7%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
56.8%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
49.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
54.8%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (+.f64 (/.f64 (*.f64 a (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64)))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
Compiler

Compiled 636 to 618 computations (2.8% saved)

series91.0ms (2%)

Memory
-7.2MiB live, 91.5MiB allocated; 9ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08254631
Stop Event
iter-limit
Counts
32 → 145
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
r
(/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(sin.f64 b)
b
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))
(neg.f64 (sin.f64 a))
(sin.f64 a)
a
(*.f64 (cos.f64 b) (cos.f64 a))
(cos.f64 b)
(cos.f64 a)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 b r)
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(/.f64 r (cos.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 a b)
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b))))
(sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))
(fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b))
#s(literal 1/2 binary64)
(PI.f64)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b))))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))
(+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b))))
(*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))
#s(literal -1 binary64)
(*.f64 a (sin.f64 b))
Outputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
#s(approx r r)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 a b))))
#s(approx (/ (* b r) (cos a)) (/.f64 (*.f64 b r) (cos.f64 a)))
#s(approx (* b r) (*.f64 b r))
#s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 (+.f64 a b))))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (/.f64 (*.f64 r (sin.f64 b)) (sin.f64 (+.f64 a (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (+.f64 (/.f64 (*.f64 a (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64)))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (cos.f64 b)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 (sin.f64 b) (cos.f64 b)))
#s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (sin.f64 b) (cos.f64 b))))
#s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b))))) (cos.f64 b)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (sin.f64 b) (cos.f64 b))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (cos.f64 b))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 b) (*.f64 a (fma.f64 #s(literal -1 binary64) (sin.f64 b) (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b)))))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 b) (*.f64 a (fma.f64 #s(literal -1 binary64) (sin.f64 b) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 #s(literal 1/6 binary64) (*.f64 a (sin.f64 b)))))))))
#s(approx (neg (sin a)) (*.f64 #s(literal -1 binary64) a))
#s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1 binary64))))
#s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1/6 binary64) (*.f64 #s(literal -1/120 binary64) (pow.f64 a #s(literal 2 binary64))))) #s(literal 1 binary64))))
#s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1/6 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/120 binary64))))) #s(literal 1 binary64))))
#s(approx (sin a) a)
#s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 a #s(literal 2 binary64))))))
#s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 a #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (cos.f64 b)))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (cos.f64 b)))))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (cos.f64 b)) (*.f64 #s(literal 1/24 binary64) (cos.f64 b))))))))
#s(approx (cos a) #s(literal 1 binary64))
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (pow.f64 a #s(literal 2 binary64))))) #s(literal 1/2 binary64)))))
#s(approx (/ (* b r) (cos a)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (*.f64 b r)) (*.f64 b r)))
#s(approx (/ (* b r) (cos a)) (fma.f64 b r (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (*.f64 b r) (*.f64 #s(literal 1/24 binary64) (*.f64 b r))))) (*.f64 #s(literal -1/2 binary64) (*.f64 b r))))))
#s(approx (/ (* b r) (cos a)) (fma.f64 b r (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 b r) (fma.f64 #s(literal 1/48 binary64) (*.f64 b r) (*.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 b r) (*.f64 #s(literal 1/24 binary64) (*.f64 b r)))))))) (fma.f64 #s(literal -1/4 binary64) (*.f64 b r) (*.f64 #s(literal 1/24 binary64) (*.f64 b r))))) (*.f64 #s(literal -1/2 binary64) (*.f64 b r))))))
#s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 b)))
#s(approx (/ r (cos (+ a b))) (+.f64 (/.f64 r (cos.f64 b)) (/.f64 (*.f64 a (*.f64 r (sin.f64 b))) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (/ r (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 b)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 r (cos.f64 b))))
#s(approx (/ r (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (sin.f64 b)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 b))))) (cos.f64 b)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 b)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 r (cos.f64 b))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 a (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 #s(literal 1/6 binary64) (*.f64 a (sin.f64 b))))) (sin.f64 b)))))
#s(approx (+ a b) b)
#s(approx (+ a b) (+.f64 a b))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (/.f64 (*.f64 r (sin.f64 b)) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 a (*.f64 r (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 b)))) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (/.f64 (*.f64 r (sin.f64 b)) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (*.f64 (pow.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)) (sin.f64 b))) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))) (/.f64 (*.f64 r (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 b))) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)))) (/.f64 (*.f64 r (sin.f64 b)) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (*.f64 (pow.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)) (sin.f64 b))) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (*.f64 r (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 b))) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 r (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 b))) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)))))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (*.f64 (pow.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)) (sin.f64 b))) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))) (/.f64 (*.f64 r (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 b))) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)))) (/.f64 (*.f64 r (sin.f64 b)) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 (sin.f64 b) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 a (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 b))) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (/.f64 (sin.f64 b) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))) (/.f64 (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 b)) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)))) (/.f64 (sin.f64 b) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 b)) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 b)) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)))))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))) (/.f64 (*.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 b)) (pow.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)))) (/.f64 (sin.f64 b) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (+.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 a (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (+.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 a (+.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 #s(literal -1/2 binary64) (*.f64 a (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (+.f64 (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 a (+.f64 (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (sin.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 #s(literal -1/6 binary64) (*.f64 a (cos.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))))))
#s(approx (+ (* 1/2 (PI)) (+ a b)) (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))
#s(approx (+ (* 1/2 (PI)) (+ a b)) (+.f64 a (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (* -1 (* a (sin b))) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b))))
#s(approx (* a (sin b)) (*.f64 a (sin.f64 b)))
#s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
#s(approx (neg (sin a)) (*.f64 #s(literal -1 binary64) (sin.f64 a)))
#s(approx (sin a) (sin.f64 a))
#s(approx (* (cos b) (cos a)) (*.f64 (cos.f64 a) (cos.f64 b)))
#s(approx (cos a) (cos.f64 a))
#s(approx (cos (+ a b)) (cos.f64 (+.f64 a b)))
#s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 (sin.f64 b) (sin.f64 (+.f64 a (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (sin.f64 (+.f64 a (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (+ (* 1/2 (PI)) (+ a b)) (*.f64 a (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (/.f64 (PI.f64) a) (/.f64 b a)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (+ (cos b) (* -1 (* a (sin b)))) (*.f64 a (fma.f64 #s(literal -1 binary64) (sin.f64 b) (/.f64 (cos.f64 b) a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (cos (+ a b)) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a))))
#s(approx (+ a b) (*.f64 #s(literal -1 binary64) (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 b a)) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (/.f64 (*.f64 r (sin.f64 b)) (sin.f64 (-.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal -1 binary64) a)))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 (sin.f64 b) (sin.f64 (-.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal -1 binary64) a)))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (sin.f64 (-.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal -1 binary64) a))))
#s(approx (+ (* 1/2 (PI)) (+ a b)) (*.f64 #s(literal -1 binary64) (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 b (*.f64 #s(literal 1/2 binary64) (PI.f64))) a)) #s(literal 1 binary64)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (+ (cos b) (* -1 (* a (sin b)))) (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (sin.f64 b) (*.f64 #s(literal -1 binary64) (/.f64 (cos.f64 b) a))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 b (+.f64 (/.f64 r (cos.f64 a)) (/.f64 (*.f64 b (*.f64 r (sin.f64 a))) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (cos.f64 a)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))) (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a)))))
#s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (*.f64 b (+.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (/.f64 (*.f64 b (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))
#s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))
#s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (cos.f64 a)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 b #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 b #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 b (fma.f64 #s(literal -1 binary64) (sin.f64 a) (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a)))))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 b (fma.f64 #s(literal -1 binary64) (sin.f64 a) (*.f64 b (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 #s(literal 1/6 binary64) (*.f64 b (sin.f64 a)))))))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 a) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (cos.f64 a)))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (cos.f64 a)))))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (cos.f64 a)) (*.f64 #s(literal 1/24 binary64) (cos.f64 a))))))))
#s(approx (cos b) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 b #s(literal 2 binary64)))))
#s(approx (cos b) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 b #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (cos b) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (pow.f64 b #s(literal 2 binary64))))) #s(literal 1/2 binary64)))))
#s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a)))
#s(approx (/ r (cos (+ a b))) (+.f64 (/.f64 r (cos.f64 a)) (/.f64 (*.f64 b (*.f64 r (sin.f64 a))) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))
#s(approx (/ r (cos (+ a b))) (fma.f64 b (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a))))
#s(approx (/ r (cos (+ a b))) (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 a) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a))))) (cos.f64 a)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 b (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 #s(literal 1/6 binary64) (*.f64 b (sin.f64 a))))) (sin.f64 a)))))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 b (*.f64 r (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (/.f64 r (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))) (/.f64 (*.f64 r (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)))) (/.f64 r (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1/6 binary64) (/.f64 (*.f64 r (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (fma.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 r (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (/.f64 (*.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))) (*.f64 #s(literal -1/6 binary64) (/.f64 r (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))) (/.f64 (*.f64 r (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)))) (/.f64 r (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 b (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))) (/.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (fma.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64))) (/.f64 (*.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))) (/.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (pow.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (+.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 b (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (+.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 b (+.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 #s(literal -1/2 binary64) (*.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (+.f64 (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 b (+.f64 (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 b (fma.f64 #s(literal -1/2 binary64) (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 #s(literal -1/6 binary64) (*.f64 b (cos.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))))))
#s(approx (+ (* 1/2 (PI)) (+ a b)) (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))
#s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b))))
#s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b)))))
#s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64)))))))
#s(approx (* -1 (* a (sin b))) (*.f64 #s(literal -1 binary64) (*.f64 a b)))
#s(approx (* -1 (* a (sin b))) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal 1/6 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64)))))))
#s(approx (* -1 (* a (sin b))) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) a))))))
#s(approx (* -1 (* a (sin b))) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal 1/6 binary64) a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/120 binary64) a (*.f64 #s(literal 1/5040 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64)))))))))))
#s(approx (* a (sin b)) (*.f64 a b))
#s(approx (* a (sin b)) (*.f64 b (+.f64 a (*.f64 #s(literal -1/6 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64)))))))
#s(approx (* a (sin b)) (*.f64 b (+.f64 a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) a (*.f64 #s(literal 1/120 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64)))))))))
#s(approx (* a (sin b)) (*.f64 b (+.f64 a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64))) (*.f64 #s(literal 1/120 binary64) a))))))))
#s(approx (sin b) (sin.f64 b))
#s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b))))
#s(approx (+ (* 1/2 (PI)) (+ a b)) (*.f64 b (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (/.f64 (PI.f64) b) (/.f64 a b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
#s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
#s(approx (cos (+ a b)) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b))))
#s(approx (+ a b) (*.f64 #s(literal -1 binary64) (*.f64 b (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 a b)) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (/.f64 (*.f64 r (sin.f64 b)) (sin.f64 (-.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal -1 binary64) b)))))
#s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 (sin.f64 b) (sin.f64 (-.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal -1 binary64) b)))))
#s(approx (sin (+ (* 1/2 (PI)) (+ a b))) (sin.f64 (-.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal -1 binary64) b))))
#s(approx (+ (* 1/2 (PI)) (+ a b)) (*.f64 #s(literal -1 binary64) (*.f64 b (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))) b)) #s(literal 1 binary64)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
Calls

9 calls:

TimeVariablePointExpression
17.0ms
b
@inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (sin b) b (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (neg (sin a)) (sin a) a (* (cos b) (cos a)) (cos b) (cos a) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (* (/ r (cos (+ a b))) (sin b)) (/ r (cos (+ a b))) (cos (+ a b)) (+ a b) (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (sin (+ (* 1/2 (PI)) (+ a b))) (+ (* 1/2 (PI)) (+ a b)) 1/2 (PI) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ (cos b) (* -1 (* a (sin b)))) (* -1 (* a (sin b))) -1 (* a (sin b)))
9.0ms
r
@-inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (sin b) b (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (neg (sin a)) (sin a) a (* (cos b) (cos a)) (cos b) (cos a) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (* (/ r (cos (+ a b))) (sin b)) (/ r (cos (+ a b))) (cos (+ a b)) (+ a b) (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (sin (+ (* 1/2 (PI)) (+ a b))) (+ (* 1/2 (PI)) (+ a b)) 1/2 (PI) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ (cos b) (* -1 (* a (sin b)))) (* -1 (* a (sin b))) -1 (* a (sin b)))
7.0ms
r
@0
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (sin b) b (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (neg (sin a)) (sin a) a (* (cos b) (cos a)) (cos b) (cos a) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (* (/ r (cos (+ a b))) (sin b)) (/ r (cos (+ a b))) (cos (+ a b)) (+ a b) (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (sin (+ (* 1/2 (PI)) (+ a b))) (+ (* 1/2 (PI)) (+ a b)) 1/2 (PI) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ (cos b) (* -1 (* a (sin b)))) (* -1 (* a (sin b))) -1 (* a (sin b)))
7.0ms
b
@-inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (sin b) b (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (neg (sin a)) (sin a) a (* (cos b) (cos a)) (cos b) (cos a) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (* (/ r (cos (+ a b))) (sin b)) (/ r (cos (+ a b))) (cos (+ a b)) (+ a b) (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (sin (+ (* 1/2 (PI)) (+ a b))) (+ (* 1/2 (PI)) (+ a b)) 1/2 (PI) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ (cos b) (* -1 (* a (sin b)))) (* -1 (* a (sin b))) -1 (* a (sin b)))
6.0ms
a
@inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (sin b) b (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (neg (sin a)) (sin a) a (* (cos b) (cos a)) (cos b) (cos a) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (* (/ r (cos (+ a b))) (sin b)) (/ r (cos (+ a b))) (cos (+ a b)) (+ a b) (* r (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b))))) (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (sin (+ (* 1/2 (PI)) (+ a b))) (+ (* 1/2 (PI)) (+ a b)) 1/2 (PI) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ (cos b) (* -1 (* a (sin b)))) (* -1 (* a (sin b))) -1 (* a (sin b)))

rewrite184.0ms (4.1%)

Memory
5.8MiB live, 144.4MiB allocated; 7ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
037214
065235
1257175
22192175
08082175
124819175
Stop Event
saturated
node-limit
iter-limit
Counts
32 → 582
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
r
(/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(sin.f64 b)
b
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))
(neg.f64 (sin.f64 a))
(sin.f64 a)
a
(*.f64 (cos.f64 b) (cos.f64 a))
(cos.f64 b)
(cos.f64 a)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 b r)
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(/.f64 r (cos.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 a b)
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b))))
(sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))
(fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b))
#s(literal 1/2 binary64)
(PI.f64)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b))))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))
(+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b))))
(*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))
#s(literal -1 binary64)
(*.f64 a (sin.f64 b))
Outputs
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 (sin.f64 b) (/.f64 r (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) (neg.f64 r)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
r
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) #s(literal 1 binary64)) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 b))) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(neg.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 (+.f64 a b)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 a b))))
(sin.f64 b)
b
(/.f64 (fma.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64) (+.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (cos.f64 (+.f64 a b))))
(sin.f64 (neg.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)))))
(sin.f64 (neg.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (-.f64 (neg.f64 a) b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b))) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64)) (PI.f64)))
(sin.f64 (-.f64 b (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(sin.f64 (+.f64 (-.f64 (neg.f64 b) a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (+.f64 a b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 a)))
(sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b) a))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)))
(fma.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (neg.f64 (sin.f64 b))))
(fma.f64 (sin.f64 (fabs.f64 (+.f64 a b))) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (sin.f64 (-.f64 (neg.f64 b) a)) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(fma.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (+.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(fma.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (cos.f64 a)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (sin.f64 a)))
(-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 (neg.f64 (PI.f64)) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (neg.f64 (PI.f64)) #s(literal 1/2 binary64)))))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))))
(-.f64 (*.f64 (sin.f64 a) (cos.f64 (-.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 a) (sin.f64 (-.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (neg.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(-.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (neg.f64 (neg.f64 (sin.f64 b)))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (neg.f64 (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 b)) (neg.f64 (sin.f64 a))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (+.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (-.f64 (neg.f64 b) a) (PI.f64)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (fabs.f64 (+.f64 a b)) (PI.f64)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (+.f64 a b) (PI.f64)) (PI.f64)))
(cos.f64 (neg.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (fabs.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (-.f64 (neg.f64 a) b))
(cos.f64 (-.f64 (neg.f64 b) a))
(cos.f64 (fabs.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 b) a)) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 (sin.f64 (fabs.f64 (+.f64 a b))) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (neg.f64 (sin.f64 b))))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(neg.f64 (sin.f64 a))
(sin.f64 (+.f64 (fabs.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (neg.f64 a))
(sin.f64 (+.f64 (PI.f64) a))
(fma.f64 #s(literal 0 binary64) (cos.f64 a) (*.f64 #s(literal -1 binary64) (sin.f64 a)))
(fma.f64 #s(literal 0 binary64) (cos.f64 a) (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 a))))
(fma.f64 (cos.f64 a) #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 a)) #s(literal 1 binary64)))
(fma.f64 (cos.f64 a) #s(literal 0 binary64) (*.f64 (sin.f64 a) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(fma.f64 (sin.f64 a) #s(literal -1 binary64) (*.f64 (cos.f64 a) #s(literal 0 binary64)))
(-.f64 (*.f64 (sin.f64 a) (cos.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64))))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64))))))
(-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (PI.f64)))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (PI.f64)))))
(-.f64 (*.f64 #s(literal 0 binary64) (cos.f64 a)) (*.f64 #s(literal 1 binary64) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) #s(literal 0 binary64)) (*.f64 (sin.f64 a) #s(literal 1 binary64)))
(cos.f64 (fabs.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))
(cos.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))
(cos.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))
(+.f64 (*.f64 #s(literal 0 binary64) (cos.f64 a)) (*.f64 #s(literal -1 binary64) (sin.f64 a)))
(+.f64 (*.f64 #s(literal 0 binary64) (cos.f64 a)) (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 a))))
(+.f64 (*.f64 (sin.f64 a) #s(literal -1 binary64)) (*.f64 (cos.f64 a) #s(literal 0 binary64)))
(+.f64 (*.f64 (cos.f64 a) #s(literal 0 binary64)) (*.f64 (neg.f64 (sin.f64 a)) #s(literal 1 binary64)))
(+.f64 (*.f64 (cos.f64 a) #s(literal 0 binary64)) (*.f64 (sin.f64 a) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(sin.f64 a)
a
(*.f64 (+.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 b) (cos.f64 a))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (neg.f64 b))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 b))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) b)) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (neg.f64 b))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (fabs.f64 b))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) b)) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 b))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 b))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) b)) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (fabs.f64 a) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 a) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 a) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 a) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 a (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 a (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 a (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (fabs.f64 a))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (neg.f64 a))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) a)) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 a))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (neg.f64 a))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) a)) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 a))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 a))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) a)) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 b) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 b) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (fabs.f64 b) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 b) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 b (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 b (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 b (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))) (cos.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))) (cos.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))) (cos.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))) (cos.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b)) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b)))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b)) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (neg.f64 b)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fabs.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a)))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a)) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a)) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (neg.f64 a)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fabs.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (neg.f64 (+.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b)))) #s(literal -2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (neg.f64 b))) (cos.f64 (-.f64 (fabs.f64 a) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (fabs.f64 b))) (cos.f64 (-.f64 (fabs.f64 a) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) b)) (cos.f64 (-.f64 (fabs.f64 a) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (fabs.f64 b))) (cos.f64 (-.f64 (neg.f64 a) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (fabs.f64 b))) (cos.f64 (-.f64 a (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (fabs.f64 a))) (cos.f64 (-.f64 (neg.f64 b) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (fabs.f64 a))) (cos.f64 (-.f64 (fabs.f64 b) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (neg.f64 a))) (cos.f64 (-.f64 (fabs.f64 b) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) a)) (cos.f64 (-.f64 (fabs.f64 b) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (fabs.f64 a))) (cos.f64 (-.f64 b (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(+.f64 (/.f64 (cos.f64 (+.f64 a b)) #s(literal 2 binary64)) (/.f64 (cos.f64 (-.f64 a b)) #s(literal 2 binary64)))
(sin.f64 (+.f64 (neg.f64 (neg.f64 b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))
(fma.f64 (sin.f64 (fabs.f64 b)) #s(literal 0 binary64) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(fma.f64 (neg.f64 (sin.f64 b)) #s(literal 0 binary64) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 b) (*.f64 #s(literal 0 binary64) (sin.f64 b)))
(fma.f64 (sin.f64 b) #s(literal 0 binary64) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(-.f64 (*.f64 (sin.f64 b) #s(literal 0 binary64)) (*.f64 (cos.f64 b) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(cos.f64 (neg.f64 (neg.f64 b)))
(cos.f64 (neg.f64 (fabs.f64 b)))
(cos.f64 (fabs.f64 (fabs.f64 b)))
(cos.f64 (neg.f64 b))
(cos.f64 (fabs.f64 b))
(cos.f64 b)
(+.f64 (*.f64 (sin.f64 (fabs.f64 b)) #s(literal 0 binary64)) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 b)) (*.f64 #s(literal 0 binary64) (sin.f64 b)))
(+.f64 (*.f64 (neg.f64 (sin.f64 b)) #s(literal 0 binary64)) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 b) #s(literal 0 binary64)) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 a)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (neg.f64 a)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))
(fma.f64 (sin.f64 (fabs.f64 a)) #s(literal 0 binary64) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 a) (*.f64 #s(literal 0 binary64) (sin.f64 a)))
(fma.f64 (neg.f64 (sin.f64 a)) #s(literal 0 binary64) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(fma.f64 (sin.f64 a) #s(literal 0 binary64) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 a))))
(-.f64 (*.f64 (sin.f64 a) #s(literal 0 binary64)) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(cos.f64 (neg.f64 (fabs.f64 a)))
(cos.f64 (neg.f64 (neg.f64 a)))
(cos.f64 (fabs.f64 (fabs.f64 a)))
(cos.f64 (fabs.f64 a))
(cos.f64 (neg.f64 a))
(cos.f64 a)
(+.f64 (*.f64 (sin.f64 (fabs.f64 a)) #s(literal 0 binary64)) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) #s(literal 0 binary64)) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 #s(literal 0 binary64) (sin.f64 a)))
(+.f64 (*.f64 (sin.f64 a) #s(literal 0 binary64)) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
(*.f64 (/.f64 r (cos.f64 a)) b)
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r))
(*.f64 (*.f64 (neg.f64 b) r) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 a))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 r (cos.f64 a)) b))
(*.f64 (*.f64 b r) (/.f64 #s(literal 1 binary64) (cos.f64 a)))
(*.f64 b (/.f64 r (cos.f64 a)))
(*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) (cos.f64 a))))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 (*.f64 b r) #s(literal 1 binary64)) (cos.f64 a))
(/.f64 (neg.f64 (*.f64 (neg.f64 b) r)) (neg.f64 (neg.f64 (cos.f64 a))))
(/.f64 (*.f64 (neg.f64 b) r) (neg.f64 (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(neg.f64 (/.f64 (*.f64 b r) (neg.f64 (cos.f64 a))))
(neg.f64 (/.f64 (*.f64 (neg.f64 b) r) (cos.f64 a)))
(*.f64 b r)
(*.f64 r b)
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 (sin.f64 b) (/.f64 r (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) (neg.f64 r)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) r)
(*.f64 (neg.f64 r) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(*.f64 #s(literal 1 binary64) (/.f64 r (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(literal 1 binary64)) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 (neg.f64 r)) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 r) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 r (cos.f64 (+.f64 a b)))
(neg.f64 (/.f64 r (neg.f64 (cos.f64 (+.f64 a b)))))
(neg.f64 (/.f64 (neg.f64 r) (cos.f64 (+.f64 a b))))
(/.f64 (fma.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64) (+.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (cos.f64 (+.f64 a b))))
(sin.f64 (neg.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)))))
(sin.f64 (neg.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (-.f64 (neg.f64 a) b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b))) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64)) (PI.f64)))
(sin.f64 (-.f64 b (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(sin.f64 (+.f64 (-.f64 (neg.f64 b) a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (+.f64 a b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 a)))
(sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b) a))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)))
(fma.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (neg.f64 (sin.f64 b))))
(fma.f64 (sin.f64 (fabs.f64 (+.f64 a b))) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (sin.f64 (-.f64 (neg.f64 b) a)) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(fma.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (+.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(fma.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (cos.f64 a)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (sin.f64 a)))
(-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 (neg.f64 (PI.f64)) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (neg.f64 (PI.f64)) #s(literal 1/2 binary64)))))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))))
(-.f64 (*.f64 (sin.f64 a) (cos.f64 (-.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 a) (sin.f64 (-.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (neg.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(-.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (neg.f64 (neg.f64 (sin.f64 b)))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (neg.f64 (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 b)) (neg.f64 (sin.f64 a))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (+.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (-.f64 (neg.f64 b) a) (PI.f64)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (fabs.f64 (+.f64 a b)) (PI.f64)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (+.f64 a b) (PI.f64)) (PI.f64)))
(cos.f64 (neg.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (fabs.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (-.f64 (neg.f64 a) b))
(cos.f64 (-.f64 (neg.f64 b) a))
(cos.f64 (fabs.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 b) a)) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 (sin.f64 (fabs.f64 (+.f64 a b))) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (neg.f64 (sin.f64 b))))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(neg.f64 (-.f64 (neg.f64 b) a))
(-.f64 a (neg.f64 b))
(-.f64 b (neg.f64 a))
(+.f64 a (neg.f64 (neg.f64 b)))
(+.f64 a b)
(+.f64 b a)
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 (sin.f64 b) (/.f64 r (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) (neg.f64 r)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) #s(literal 1 binary64)) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 b))) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(neg.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 (+.f64 a b)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 a b))))
(/.f64 (fma.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64) (+.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (cos.f64 (+.f64 a b))))
(sin.f64 (neg.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)))))
(sin.f64 (neg.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (-.f64 (neg.f64 a) b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b))) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64)) (PI.f64)))
(sin.f64 (-.f64 b (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(sin.f64 (+.f64 (-.f64 (neg.f64 b) a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (+.f64 a b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 a)))
(sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b) a))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)))
(fma.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (neg.f64 (sin.f64 b))))
(fma.f64 (sin.f64 (fabs.f64 (+.f64 a b))) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (sin.f64 (-.f64 (neg.f64 b) a)) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(fma.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(fma.f64 (+.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(fma.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (cos.f64 a)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (sin.f64 a)))
(-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 (neg.f64 (PI.f64)) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (neg.f64 (PI.f64)) #s(literal 1/2 binary64)))))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))))
(-.f64 (*.f64 (sin.f64 a) (cos.f64 (-.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 a) (sin.f64 (-.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (neg.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(-.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(-.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (neg.f64 (neg.f64 (sin.f64 b)))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (neg.f64 (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 b)) (neg.f64 (sin.f64 a))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (+.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (-.f64 (neg.f64 b) a) (PI.f64)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (fabs.f64 (+.f64 a b)) (PI.f64)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (+.f64 a b) (PI.f64)) (PI.f64)))
(cos.f64 (neg.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (fabs.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (-.f64 (neg.f64 a) b))
(cos.f64 (-.f64 (neg.f64 b) a))
(cos.f64 (fabs.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 b) a)) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 (sin.f64 (fabs.f64 (+.f64 a b))) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (neg.f64 (sin.f64 b))))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 (-.f64 (neg.f64 b) a))))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(/.f64 (fma.f64 (+.f64 a b) #s(literal 2 binary64) (PI.f64)) #s(literal 2 binary64))
(neg.f64 (-.f64 (-.f64 (neg.f64 b) a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64)) (+.f64 a b))
(fma.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64))) (*.f64 (cbrt.f64 (PI.f64)) #s(literal 1/2 binary64)) (+.f64 a b))
(fma.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64))) (/.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64)) (+.f64 a b))
(fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b))
(fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b))
(-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 b))
(-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (-.f64 (neg.f64 b) a))
(-.f64 (+.f64 a b) (*.f64 (neg.f64 (PI.f64)) #s(literal 1/2 binary64)))
(-.f64 (+.f64 a b) (*.f64 #s(literal -1/2 binary64) (PI.f64)))
(-.f64 (+.f64 a b) (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(-.f64 a (-.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) a)
(+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) b)
(+.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (+.f64 a b))
(+.f64 (+.f64 a b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))
(+.f64 a (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))
(+.f64 b (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))
#s(literal 1/2 binary64)
(PI.f64)
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))))
(*.f64 (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))) r)
(*.f64 (sin.f64 b) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))) r))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))))
(/.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))) (sin.f64 b))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 #s(literal 1 binary64) (neg.f64 #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))))
(*.f64 (sin.f64 b) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))))
(/.f64 (*.f64 (sin.f64 b) #s(literal 1 binary64)) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 b))) (neg.f64 (neg.f64 #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(neg.f64 (/.f64 (sin.f64 b) (neg.f64 #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 b)) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))))
#s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))
(neg.f64 (-.f64 (*.f64 (sin.f64 b) a) (cos.f64 b)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) a (cos.f64 b))
(fma.f64 (*.f64 (sin.f64 b) a) #s(literal -1 binary64) (cos.f64 b))
(fma.f64 (neg.f64 (sin.f64 b)) a (cos.f64 b))
(fma.f64 (neg.f64 a) (sin.f64 b) (cos.f64 b))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 b) a) (cos.f64 b))
(fma.f64 a (*.f64 (sin.f64 b) #s(literal -1 binary64)) (cos.f64 b))
(fma.f64 a (neg.f64 (sin.f64 b)) (cos.f64 b))
(fma.f64 (sin.f64 b) (neg.f64 a) (cos.f64 b))
(-.f64 (*.f64 (neg.f64 a) (sin.f64 b)) (neg.f64 (cos.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))
(+.f64 (*.f64 (neg.f64 a) (sin.f64 b)) (cos.f64 b))
(+.f64 (cos.f64 b) (*.f64 (neg.f64 a) (sin.f64 b)))
(*.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) a)
(*.f64 (*.f64 (sin.f64 b) a) #s(literal -1 binary64))
(*.f64 (neg.f64 (sin.f64 b)) a)
(*.f64 (neg.f64 a) (sin.f64 b))
(*.f64 #s(literal -1 binary64) (*.f64 (sin.f64 b) a))
(*.f64 a (*.f64 (sin.f64 b) #s(literal -1 binary64)))
(*.f64 a (neg.f64 (sin.f64 b)))
(*.f64 (sin.f64 b) (neg.f64 a))
(neg.f64 (*.f64 (sin.f64 b) a))
#s(literal -1 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) a) (sin.f64 b))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 b)) a)
(*.f64 (neg.f64 (neg.f64 a)) (sin.f64 b))
(*.f64 (*.f64 (sin.f64 b) a) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 b) a))
(*.f64 (neg.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 (*.f64 (neg.f64 a) (sin.f64 b)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 a) (sin.f64 b)))
(*.f64 a (sin.f64 b))
(*.f64 (sin.f64 b) a)
(neg.f64 (*.f64 (neg.f64 a) (sin.f64 b)))

eval89.0ms (2%)

Memory
-27.3MiB live, 112.0MiB allocated; 16ms collecting garbage
Compiler

Compiled 7 951 to 3 393 computations (57.3% saved)

prune44.0ms (1%)

Memory
18.8MiB live, 65.4MiB allocated; 2ms collecting garbage
Pruning

54 alts after pruning (50 fresh and 4 done)

PrunedKeptTotal
New55937596
Fresh71320
Picked145
Done000
Total56754621
Accuracy
99.9%
Counts
621 → 54
Alt Table
Click to see full alt table
StatusAccuracyProgram
74.7%
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
54.8%
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
54.8%
(*.f64 (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))) r)
74.8%
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
56.4%
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))) (sin.f64 b))
56.9%
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) b))) (sin.f64 b))
54.2%
(*.f64 (/.f64 r #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))) (sin.f64 b))
74.7%
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
74.8%
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) r) (sin.f64 b))
54.6%
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
8.3%
(*.f64 r (/.f64 (sin.f64 (+.f64 (neg.f64 b) (PI.f64))) (cos.f64 (+.f64 a b))))
98.2%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64))))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64)))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
99.1%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (PI.f64)))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (PI.f64))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
75.6%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (sin.f64 (+.f64 (PI.f64) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
29.7%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a)) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a))) #s(literal 2 binary64)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
54.3%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))))
58.1%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) #s(literal 1 binary64))))))
65.2%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
57.2%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) #s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1 binary64)))) (*.f64 (cos.f64 b) (cos.f64 a)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
54.9%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (cos.f64 a)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (sin.f64 a)))))
58.6%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (sin.f64 b)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
39.0%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
37.1%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) #s(approx (+ a b) b)))))
38.5%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b) a))))
38.6%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (* 1/2 (PI)) (+ a b)) (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
62.6%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a)))))))
56.9%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
51.2%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
54.2%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))))
50.2%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
54.6%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
32.7%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64))))))))))
32.7%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
33.7%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
9.6%
(*.f64 r (/.f64 (cos.f64 (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 a b))))
50.2%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
33.9%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
49.3%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
74.7%
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b)))
49.7%
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
34.0%
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
99.5%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
56.8%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
34.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
33.5%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
49.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
31.8%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
31.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
33.1%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
49.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
49.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
Compiler

Compiled 1 700 to 1 593 computations (6.3% saved)

series134.0ms (3%)

Memory
-45.1MiB live, 73.7MiB allocated; 112ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06873379
Stop Event
iter-limit
Counts
42 → 134
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(*.f64 r (sin.f64 b))
r
(sin.f64 b)
b
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
#s(literal -1 binary64)
(*.f64 (sin.f64 a) (sin.f64 b))
(sin.f64 a)
a
(*.f64 (cos.f64 a) (cos.f64 b))
(cos.f64 a)
(cos.f64 b)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
(/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64)))
(*.f64 b r)
#s(approx (cos a) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
(/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b)))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))
(*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))
(*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))
#s(literal -1/6 binary64)
(pow.f64 b #s(literal 2 binary64))
#s(literal 2 binary64)
(cos.f64 (+.f64 a b))
(+.f64 a b)
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b)))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b))
(/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b))))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))
(+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b))))
(*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))
(-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b))
(*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b)))
#s(literal -1/2 binary64)
(*.f64 a (cos.f64 b))
Outputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
#s(approx (* r (sin b)) (*.f64 r (sin.f64 b)))
#s(approx r r)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 a b))))
#s(approx (/ (* b r) (cos a)) (/.f64 (*.f64 b r) (cos.f64 a)))
#s(approx (* b r) (*.f64 b r))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (+.f64 (/.f64 (*.f64 a (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64)))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (cos.f64 b)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) (cos.f64 b))
#s(approx (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))
#s(approx (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) (+.f64 (cos.f64 b) (*.f64 a (fma.f64 #s(literal -1 binary64) (sin.f64 b) (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b)))))))
#s(approx (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) (+.f64 (cos.f64 b) (*.f64 a (fma.f64 #s(literal -1 binary64) (sin.f64 b) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 #s(literal 1/6 binary64) (*.f64 a (sin.f64 b)))))))))
#s(approx (* (sin a) (sin b)) (*.f64 a (sin.f64 b)))
#s(approx (* (sin a) (sin b)) (*.f64 a (+.f64 (sin.f64 b) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (sin.f64 b))))))
#s(approx (* (sin a) (sin b)) (*.f64 a (+.f64 (sin.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 b) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (sin.f64 b))))))))
#s(approx (* (sin a) (sin b)) (*.f64 a (+.f64 (sin.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (sin.f64 b)) (*.f64 #s(literal 1/120 binary64) (sin.f64 b)))))))))
#s(approx (sin a) a)
#s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 a #s(literal 2 binary64))))))
#s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 a #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (* (cos a) (cos b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (cos.f64 b)))))
#s(approx (* (cos a) (cos b)) (+.f64 (cos.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (cos.f64 b)))))))
#s(approx (* (cos a) (cos b)) (+.f64 (cos.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (cos.f64 b)) (*.f64 #s(literal 1/24 binary64) (cos.f64 b))))))))
#s(approx (cos a) #s(literal 1 binary64))
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (pow.f64 a #s(literal 2 binary64))))) #s(literal 1/2 binary64)))))
#s(approx (/ (* b r) (cos a)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (*.f64 b r)) (*.f64 b r)))
#s(approx (/ (* b r) (cos a)) (fma.f64 b r (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (*.f64 b r) (*.f64 #s(literal 1/24 binary64) (*.f64 b r))))) (*.f64 #s(literal -1/2 binary64) (*.f64 b r))))))
#s(approx (/ (* b r) (cos a)) (fma.f64 b r (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 b r) (fma.f64 #s(literal 1/48 binary64) (*.f64 b r) (*.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 b r) (*.f64 #s(literal 1/24 binary64) (*.f64 b r)))))))) (fma.f64 #s(literal -1/4 binary64) (*.f64 b r) (*.f64 #s(literal 1/24 binary64) (*.f64 b r))))) (*.f64 #s(literal -1/2 binary64) (*.f64 b r))))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 b)))
#s(approx (/ (sin b) (cos (+ a b))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (sin.f64 b) (cos.f64 b))))
#s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b))))) (cos.f64 b)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (sin.f64 b) (cos.f64 b))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 a (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 #s(literal 1/6 binary64) (*.f64 a (sin.f64 b))))) (sin.f64 b)))))
#s(approx (+ a b) b)
#s(approx (+ a b) (+.f64 a b))
#s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 b)))
#s(approx (/ 1 (cos (+ a b))) (+.f64 (/.f64 #s(literal 1 binary64) (cos.f64 b)) (/.f64 (*.f64 a (sin.f64 b)) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (/ 1 (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 b))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 b) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 b))))
#s(approx (/ 1 (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 b))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64)))))) (cos.f64 b)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 (sin.f64 b) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 b)))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 b) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 b))))
#s(approx (* a (- (* -1/2 (* a (cos b))) (sin b))) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b))))
#s(approx (* a (- (* -1/2 (* a (cos b))) (sin b))) (*.f64 a (fma.f64 #s(literal -1 binary64) (sin.f64 b) (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))))))
#s(approx (- (* -1/2 (* a (cos b))) (sin b)) (*.f64 #s(literal -1 binary64) (sin.f64 b)))
#s(approx (- (* -1/2 (* a (cos b))) (sin b)) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))
#s(approx (* -1/2 (* a (cos b))) (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))))
#s(approx (* a (cos b)) (*.f64 a (cos.f64 b)))
#s(approx (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
#s(approx (* (sin a) (sin b)) (*.f64 (sin.f64 a) (sin.f64 b)))
#s(approx (sin a) (sin.f64 a))
#s(approx (* (cos a) (cos b)) (*.f64 (cos.f64 a) (cos.f64 b)))
#s(approx (cos a) (cos.f64 a))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (cos (+ a b)) (cos.f64 (+.f64 a b)))
#s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a))))
#s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
#s(approx (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (cos.f64 b))))
#s(approx (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (sin.f64 b) a) (*.f64 #s(literal -1/2 binary64) (cos.f64 b)))))
#s(approx (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (/.f64 (cos.f64 b) (pow.f64 a #s(literal 2 binary64)))) (/.f64 (sin.f64 b) a))))
#s(approx (- (* -1/2 (* a (cos b))) (sin b)) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (sin.f64 b) a) (*.f64 #s(literal -1/2 binary64) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (cos (+ a b)) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a))))
#s(approx (+ a b) (*.f64 #s(literal -1 binary64) (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 b a)) #s(literal 1 binary64)))))
#s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 (sin.f64 b) (*.f64 #s(literal -1 binary64) (/.f64 (cos.f64 b) a))) a) (*.f64 #s(literal -1/2 binary64) (cos.f64 b)))))
#s(approx (- (* -1/2 (* a (cos b))) (sin b)) (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal 1/2 binary64) (cos.f64 b) (/.f64 (sin.f64 b) a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 b (+.f64 (/.f64 r (cos.f64 a)) (/.f64 (*.f64 b (*.f64 r (sin.f64 a))) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (cos.f64 a)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))) (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a)))))
#s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r)))))
#s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) r (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r)))))))
#s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) r (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r) (*.f64 #s(literal 1/120 binary64) r))))))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 b #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 b #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))
#s(approx (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) (+.f64 (cos.f64 a) (*.f64 b (fma.f64 #s(literal -1 binary64) (sin.f64 a) (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a)))))))
#s(approx (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) (+.f64 (cos.f64 a) (*.f64 b (fma.f64 #s(literal -1 binary64) (sin.f64 a) (*.f64 b (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 #s(literal 1/6 binary64) (*.f64 b (sin.f64 a)))))))))
#s(approx (* (sin a) (sin b)) (*.f64 b (sin.f64 a)))
#s(approx (* (sin a) (sin b)) (*.f64 b (+.f64 (sin.f64 a) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (sin.f64 a))))))
#s(approx (* (sin a) (sin b)) (*.f64 b (+.f64 (sin.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 a) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (sin.f64 a))))))))
#s(approx (* (sin a) (sin b)) (*.f64 b (+.f64 (sin.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (sin.f64 a)) (*.f64 #s(literal 1/120 binary64) (sin.f64 a)))))))))
#s(approx (* (cos a) (cos b)) (+.f64 (cos.f64 a) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (cos.f64 a)))))
#s(approx (* (cos a) (cos b)) (+.f64 (cos.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (cos.f64 a)))))))
#s(approx (* (cos a) (cos b)) (+.f64 (cos.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (cos.f64 a)) (*.f64 #s(literal 1/24 binary64) (cos.f64 a))))))))
#s(approx (cos b) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 b #s(literal 2 binary64)))))
#s(approx (cos b) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 b #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (cos b) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (pow.f64 b #s(literal 2 binary64))))) #s(literal 1/2 binary64)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 b (+.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (/.f64 (*.f64 b (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (cos.f64 a)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))
#s(approx (+ 1 (* -1/6 (pow b 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))
#s(approx (* -1/6 (pow b 2)) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))
#s(approx (pow b 2) (pow.f64 b #s(literal 2 binary64)))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 b (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 #s(literal 1/6 binary64) (*.f64 b (sin.f64 a))))) (sin.f64 a)))))
#s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 a)))
#s(approx (/ 1 (cos (+ a b))) (+.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (/.f64 (*.f64 b (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))
#s(approx (/ 1 (cos (+ a b))) (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 a))))
#s(approx (/ 1 (cos (+ a b))) (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (cos.f64 a)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 a))))
#s(approx (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (*.f64 a b) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))
#s(approx (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 a b) (*.f64 #s(literal 1/4 binary64) (pow.f64 a #s(literal 2 binary64)))) #s(literal 1/2 binary64))))))))
#s(approx (* a (- (* -1/2 (* a (cos b))) (sin b))) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))
#s(approx (* a (- (* -1/2 (* a (cos b))) (sin b))) (fma.f64 #s(literal -1 binary64) (*.f64 a b) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))
#s(approx (* a (- (* -1/2 (* a (cos b))) (sin b))) (fma.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) b))))))
#s(approx (* a (- (* -1/2 (* a (cos b))) (sin b))) (fma.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (fma.f64 #s(literal 1/6 binary64) (*.f64 a b) (*.f64 #s(literal 1/4 binary64) (pow.f64 a #s(literal 2 binary64)))))))))
#s(approx (- (* -1/2 (* a (cos b))) (sin b)) (*.f64 #s(literal -1/2 binary64) a))
#s(approx (- (* -1/2 (* a (cos b))) (sin b)) (fma.f64 #s(literal -1 binary64) b (*.f64 #s(literal -1/2 binary64) a)))
#s(approx (- (* -1/2 (* a (cos b))) (sin b)) (fma.f64 #s(literal -1/2 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 a b)) #s(literal 1 binary64)))))
#s(approx (- (* -1/2 (* a (cos b))) (sin b)) (fma.f64 #s(literal -1/2 binary64) a (*.f64 b (-.f64 (*.f64 b (fma.f64 #s(literal 1/6 binary64) b (*.f64 #s(literal 1/4 binary64) a))) #s(literal 1 binary64)))))
#s(approx (* -1/2 (* a (cos b))) (fma.f64 #s(literal -1/2 binary64) a (*.f64 #s(literal 1/4 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64))))))
#s(approx (* -1/2 (* a (cos b))) (fma.f64 #s(literal -1/2 binary64) a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/48 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64))) (*.f64 #s(literal 1/4 binary64) a)))))
#s(approx (* -1/2 (* a (cos b))) (fma.f64 #s(literal -1/2 binary64) a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/48 binary64) a (*.f64 #s(literal 1/1440 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64))))))))))
#s(approx (* a (cos b)) (+.f64 a (*.f64 #s(literal -1/2 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64))))))
#s(approx (* a (cos b)) (+.f64 a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) a (*.f64 #s(literal 1/24 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64))))))))
#s(approx (* a (cos b)) (+.f64 a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) a (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 a (pow.f64 b #s(literal 2 binary64))) (*.f64 #s(literal 1/24 binary64) a)))))))
#s(approx (sin b) (sin.f64 b))
#s(approx (* b (+ 1 (* -1/6 (pow b 2)))) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 3 binary64))))
#s(approx (* b (+ 1 (* -1/6 (pow b 2)))) (*.f64 (pow.f64 b #s(literal 3 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 b #s(literal 2 binary64))) #s(literal 1/6 binary64))))
#s(approx (+ 1 (* -1/6 (pow b 2))) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 b #s(literal 2 binary64))) #s(literal 1/6 binary64))))
#s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b))))
#s(approx (* a (- (* -1/2 (* a (cos b))) (sin b))) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
#s(approx (* b (+ 1 (* -1/6 (pow b 2)))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 b #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 b #s(literal 2 binary64)))))))
#s(approx (cos (+ a b)) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b))))
#s(approx (+ a b) (*.f64 #s(literal -1 binary64) (*.f64 b (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 a b)) #s(literal 1 binary64)))))
#s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
Calls

9 calls:

TimeVariablePointExpression
74.0ms
a
@inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))) (* r (sin b)) r (sin b) b (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) -1 (* (sin a) (sin b)) (sin a) a (* (cos a) (cos b)) (cos a) (cos b) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (cos a) 1 (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (sin b) (* b (+ 1 (* -1/6 (pow b 2)))) (+ 1 (* -1/6 (pow b 2))) (* -1/6 (pow b 2)) -1/6 (pow b 2) 2 (cos (+ a b)) (+ a b) (* r (* (/ 1 (cos (+ a b))) (sin b))) (* (/ 1 (cos (+ a b))) (sin b)) (/ 1 (cos (+ a b))) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (* a (- (* -1/2 (* a (cos b))) (sin b))) (- (* -1/2 (* a (cos b))) (sin b)) (* -1/2 (* a (cos b))) -1/2 (* a (cos b)))
5.0ms
b
@-inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))) (* r (sin b)) r (sin b) b (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) -1 (* (sin a) (sin b)) (sin a) a (* (cos a) (cos b)) (cos a) (cos b) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (cos a) 1 (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (sin b) (* b (+ 1 (* -1/6 (pow b 2)))) (+ 1 (* -1/6 (pow b 2))) (* -1/6 (pow b 2)) -1/6 (pow b 2) 2 (cos (+ a b)) (+ a b) (* r (* (/ 1 (cos (+ a b))) (sin b))) (* (/ 1 (cos (+ a b))) (sin b)) (/ 1 (cos (+ a b))) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (* a (- (* -1/2 (* a (cos b))) (sin b))) (- (* -1/2 (* a (cos b))) (sin b)) (* -1/2 (* a (cos b))) -1/2 (* a (cos b)))
5.0ms
b
@inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))) (* r (sin b)) r (sin b) b (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) -1 (* (sin a) (sin b)) (sin a) a (* (cos a) (cos b)) (cos a) (cos b) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (cos a) 1 (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (sin b) (* b (+ 1 (* -1/6 (pow b 2)))) (+ 1 (* -1/6 (pow b 2))) (* -1/6 (pow b 2)) -1/6 (pow b 2) 2 (cos (+ a b)) (+ a b) (* r (* (/ 1 (cos (+ a b))) (sin b))) (* (/ 1 (cos (+ a b))) (sin b)) (/ 1 (cos (+ a b))) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (* a (- (* -1/2 (* a (cos b))) (sin b))) (- (* -1/2 (* a (cos b))) (sin b)) (* -1/2 (* a (cos b))) -1/2 (* a (cos b)))
4.0ms
a
@-inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))) (* r (sin b)) r (sin b) b (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) -1 (* (sin a) (sin b)) (sin a) a (* (cos a) (cos b)) (cos a) (cos b) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (cos a) 1 (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (sin b) (* b (+ 1 (* -1/6 (pow b 2)))) (+ 1 (* -1/6 (pow b 2))) (* -1/6 (pow b 2)) -1/6 (pow b 2) 2 (cos (+ a b)) (+ a b) (* r (* (/ 1 (cos (+ a b))) (sin b))) (* (/ 1 (cos (+ a b))) (sin b)) (/ 1 (cos (+ a b))) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (* a (- (* -1/2 (* a (cos b))) (sin b))) (- (* -1/2 (* a (cos b))) (sin b)) (* -1/2 (* a (cos b))) -1/2 (* a (cos b)))
4.0ms
r
@-inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))) (* r (sin b)) r (sin b) b (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) -1 (* (sin a) (sin b)) (sin a) a (* (cos a) (cos b)) (cos a) (cos b) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (cos a) 1 (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (sin b) (* b (+ 1 (* -1/6 (pow b 2)))) (+ 1 (* -1/6 (pow b 2))) (* -1/6 (pow b 2)) -1/6 (pow b 2) 2 (cos (+ a b)) (+ a b) (* r (* (/ 1 (cos (+ a b))) (sin b))) (* (/ 1 (cos (+ a b))) (sin b)) (/ 1 (cos (+ a b))) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b)))) (* a (- (* -1/2 (* a (cos b))) (sin b))) (- (* -1/2 (* a (cos b))) (sin b)) (* -1/2 (* a (cos b))) -1/2 (* a (cos b)))

rewrite180.0ms (4%)

Memory
47.2MiB live, 138.2MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056341
090353
1355297
22548297
08029288
124324288
Stop Event
saturated
node-limit
iter-limit
Counts
42 → 490
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(*.f64 r (sin.f64 b))
r
(sin.f64 b)
b
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
#s(literal -1 binary64)
(*.f64 (sin.f64 a) (sin.f64 b))
(sin.f64 a)
a
(*.f64 (cos.f64 a) (cos.f64 b))
(cos.f64 a)
(cos.f64 b)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
(/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64)))
(*.f64 b r)
#s(approx (cos a) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
(/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b)))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))
(*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))
(*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))
#s(literal -1/6 binary64)
(pow.f64 b #s(literal 2 binary64))
#s(literal 2 binary64)
(cos.f64 (+.f64 a b))
(+.f64 a b)
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b)))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b))
(/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b))))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))
(+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b))))
(*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))
(-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b))
(*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b)))
#s(literal -1/2 binary64)
(*.f64 a (cos.f64 b))
Outputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(*.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (/.f64 r (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (*.f64 (sin.f64 b) r) #s(literal 1 binary64)) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 (*.f64 (neg.f64 r) (sin.f64 b))) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 a b)))))
(neg.f64 (/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) r)
(*.f64 r (sin.f64 b))
r
(*.f64 #s(literal 1 binary64) (sin.f64 b))
(*.f64 (sin.f64 b) #s(literal 1 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (sin.f64 b)) #s(literal 2 binary64))
(sin.f64 b)
b
(/.f64 (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) #s(literal 2 binary64) (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) #s(literal 2 binary64)) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))))) #s(literal 4 binary64))
(neg.f64 (neg.f64 (cos.f64 (+.f64 a b))))
(sin.f64 (+.f64 (-.f64 (neg.f64 b) a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (+.f64 a b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) b))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))
(fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (cos.f64 b) (cos.f64 a)))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) #s(literal -1 binary64)))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (neg.f64 (sin.f64 a))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a))))
(cos.f64 (neg.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (fabs.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (-.f64 (neg.f64 a) b))
(cos.f64 (-.f64 (neg.f64 b) a))
(cos.f64 (fabs.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))
(+.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(+.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(+.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (cos.f64 b) (cos.f64 a)))
#s(literal -1 binary64)
(*.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(-.f64 (/.f64 (cos.f64 (-.f64 b a)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 a b)) #s(literal 2 binary64)))
(sin.f64 a)
a
(*.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64))
(*.f64 (cos.f64 b) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (fabs.f64 a))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (neg.f64 a))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) a)) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 a))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (neg.f64 a))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) a)) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 a))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 a))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) a)) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 b) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 b) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (fabs.f64 b) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 b) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 b (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 b (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 b (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (neg.f64 b))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 b))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) b)) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (neg.f64 b))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (fabs.f64 b))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) b)) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 b))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 b))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) b)) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (fabs.f64 a) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 a) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 a) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 a) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 a (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 a (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 a (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))) (cos.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))) (cos.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))) (cos.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))) (cos.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a)))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a)) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a)) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (neg.f64 a)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fabs.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b)) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b)))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b)) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (neg.f64 b)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fabs.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (neg.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal -2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (fabs.f64 a))) (cos.f64 (-.f64 (neg.f64 b) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (fabs.f64 a))) (cos.f64 (-.f64 (fabs.f64 b) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (neg.f64 a))) (cos.f64 (-.f64 (fabs.f64 b) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) a)) (cos.f64 (-.f64 (fabs.f64 b) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (fabs.f64 a))) (cos.f64 (-.f64 b (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (neg.f64 b))) (cos.f64 (-.f64 (fabs.f64 a) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (fabs.f64 b))) (cos.f64 (-.f64 (fabs.f64 a) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) b)) (cos.f64 (-.f64 (fabs.f64 a) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (fabs.f64 b))) (cos.f64 (-.f64 (neg.f64 a) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) b)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (fabs.f64 b))) (cos.f64 (-.f64 a (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fabs.f64 a))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 a))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) a)) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 b))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fabs.f64 b))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) b)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(+.f64 (/.f64 (cos.f64 (+.f64 a b)) #s(literal 2 binary64)) (/.f64 (cos.f64 (-.f64 b a)) #s(literal 2 binary64)))
(sin.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))
(fma.f64 (sin.f64 a) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(cos.f64 (neg.f64 (fabs.f64 a)))
(cos.f64 (neg.f64 (neg.f64 a)))
(cos.f64 (fabs.f64 (fabs.f64 a)))
(cos.f64 (fabs.f64 a))
(cos.f64 (neg.f64 a))
(cos.f64 a)
(+.f64 (*.f64 (sin.f64 a) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(sin.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))
(fma.f64 (sin.f64 b) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 b) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 b)))
(cos.f64 (neg.f64 (fabs.f64 b)))
(cos.f64 (fabs.f64 (fabs.f64 b)))
(cos.f64 (neg.f64 b))
(cos.f64 (fabs.f64 b))
(cos.f64 b)
(+.f64 (*.f64 (sin.f64 b) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 b) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 (/.f64 r #s(approx (cos a) #s(literal 1 binary64))) b))
(*.f64 (/.f64 r #s(approx (cos a) #s(literal 1 binary64))) b)
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) #s(literal 1 binary64))) (*.f64 b r))
(*.f64 (*.f64 (neg.f64 b) r) (/.f64 #s(literal 1 binary64) (neg.f64 #s(approx (cos a) #s(literal 1 binary64)))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 r #s(approx (cos a) #s(literal 1 binary64))) b))
(*.f64 (*.f64 b r) (/.f64 #s(literal 1 binary64) #s(approx (cos a) #s(literal 1 binary64))))
(*.f64 b (/.f64 r #s(approx (cos a) #s(literal 1 binary64))))
(*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) #s(literal 1 binary64)))))
(*.f64 r (/.f64 b #s(approx (cos a) #s(literal 1 binary64))))
(/.f64 (*.f64 (*.f64 b r) #s(literal 1 binary64)) #s(approx (cos a) #s(literal 1 binary64)))
(/.f64 (neg.f64 (*.f64 (neg.f64 b) r)) (neg.f64 (neg.f64 #s(approx (cos a) #s(literal 1 binary64)))))
(/.f64 (*.f64 (neg.f64 b) r) (neg.f64 #s(approx (cos a) #s(literal 1 binary64))))
(/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64)))
(neg.f64 (/.f64 (*.f64 b r) (neg.f64 #s(approx (cos a) #s(literal 1 binary64)))))
(neg.f64 (/.f64 (*.f64 (neg.f64 b) r) #s(approx (cos a) #s(literal 1 binary64))))
(*.f64 b r)
(*.f64 r b)
#s(approx (cos a) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 (*.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) r) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
(*.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (/.f64 r (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r (neg.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)))) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (neg.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) r) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (*.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) r)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) r) (cos.f64 (+.f64 a b)))
(*.f64 (*.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (neg.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)))
(*.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 #s(literal 1 binary64) (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) #s(literal 1 binary64)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) #s(literal -1 binary64)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (neg.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)))) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b)))
(neg.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (neg.f64 (cos.f64 (+.f64 a b)))))
(neg.f64 (/.f64 (neg.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) (cos.f64 (+.f64 a b))))
#s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
(*.f64 (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b) #s(literal 1 binary64))
(*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)
(*.f64 b (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 b #s(literal -1/6 binary64)) (*.f64 b b) b)
(fma.f64 (*.f64 (*.f64 b b) b) #s(literal -1/6 binary64) b)
(fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) b b)
(fma.f64 (*.f64 b b) (*.f64 #s(literal -1/6 binary64) b) b)
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 b b) b) b)
(fma.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) b)
(-.f64 b (*.f64 (neg.f64 b) (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))
(-.f64 b (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 b b)) b))
(-.f64 b (neg.f64 (*.f64 (*.f64 (*.f64 b b) b) #s(literal -1/6 binary64))))
(+.f64 (*.f64 (*.f64 (*.f64 b b) b) #s(literal -1/6 binary64)) b)
(+.f64 b (*.f64 (*.f64 (*.f64 b b) b) #s(literal -1/6 binary64)))
(*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 2 binary64) #s(literal 2 binary64)) #s(literal 2 binary64))
(neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 b b)) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal 1 binary64) (*.f64 b b)) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) b) b #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 b b) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 b (*.f64 b #s(literal -1/6 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 b b)))
(+.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (neg.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 b b))))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 b b)) #s(literal -1/6 binary64))
(*.f64 (*.f64 #s(literal -1/6 binary64) b) b)
(*.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 b b) #s(literal -1/6 binary64))
(*.f64 #s(literal -1/6 binary64) (*.f64 b b))
(*.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))
(*.f64 b (*.f64 b #s(literal -1/6 binary64)))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 (*.f64 b b) #s(literal -1/6 binary64))) #s(literal 2 binary64))
#s(literal -1/6 binary64)
(*.f64 (neg.f64 b) (neg.f64 b))
(*.f64 (fabs.f64 b) (fabs.f64 b))
(*.f64 b b)
(pow.f64 b #s(literal 2 binary64))
(fabs.f64 (*.f64 b b))
#s(literal 2 binary64)
(/.f64 (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) #s(literal 2 binary64) (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) #s(literal 2 binary64)) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))))) #s(literal 4 binary64))
(neg.f64 (neg.f64 (cos.f64 (+.f64 a b))))
(sin.f64 (+.f64 (-.f64 (neg.f64 b) a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (+.f64 a b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) b))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))
(fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (cos.f64 b) (cos.f64 a)))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) #s(literal -1 binary64)))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (neg.f64 (sin.f64 a))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a))))
(cos.f64 (neg.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (fabs.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (-.f64 (neg.f64 a) b))
(cos.f64 (-.f64 (neg.f64 b) a))
(cos.f64 (fabs.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))
(+.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(+.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (neg.f64 (neg.f64 (cos.f64 a))) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (neg.f64 (neg.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))
(+.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (cos.f64 b) (cos.f64 a)))
(neg.f64 (-.f64 (neg.f64 b) a))
(-.f64 a (neg.f64 b))
(-.f64 b (neg.f64 a))
(+.f64 a (neg.f64 (neg.f64 b)))
(+.f64 a b)
(+.f64 b a)
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(*.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (/.f64 r (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (*.f64 (sin.f64 b) r) #s(literal 1 binary64)) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 (*.f64 (neg.f64 r) (sin.f64 b))) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 a b)))))
(neg.f64 (/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (cos.f64 (+.f64 a b))))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) #s(literal -1 binary64)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 b))) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(neg.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 (+.f64 a b)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(pow.f64 (cos.f64 (+.f64 a b)) #s(literal -1 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(/.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (+.f64 a b))))
(/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)))
(/.f64 #s(literal -1 binary64) (neg.f64 (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(*.f64 (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))) r)
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(*.f64 (sin.f64 b) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))) r))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))) (sin.f64 b))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 #s(literal 1 binary64) (neg.f64 #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(*.f64 (sin.f64 b) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 b))) (neg.f64 (neg.f64 #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))))))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))))
(neg.f64 (/.f64 (sin.f64 b) (neg.f64 #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 b)) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
#s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))
(neg.f64 (-.f64 (*.f64 (-.f64 (sin.f64 b) (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64))) a) (cos.f64 b)))
(fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) a (cos.f64 b))
(fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))
(-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) a) (neg.f64 (cos.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (-.f64 (sin.f64 b) (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64))) a))
(+.f64 (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) a) (cos.f64 b))
(+.f64 (cos.f64 b) (*.f64 (neg.f64 (neg.f64 a)) (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b))))
(+.f64 (cos.f64 b) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) a))
(*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) a)
(*.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)))
(neg.f64 (*.f64 (-.f64 (sin.f64 b) (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64))) a))
(fma.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) a (*.f64 (neg.f64 (sin.f64 b)) a))
(fma.f64 a (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (*.f64 a (neg.f64 (sin.f64 b))))
(+.f64 (*.f64 a (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64))) (*.f64 a (neg.f64 (sin.f64 b))))
(+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) a) (*.f64 (neg.f64 (sin.f64 b)) a))
(neg.f64 (-.f64 (sin.f64 b) (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 b)) a (neg.f64 (sin.f64 b)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) a) (cos.f64 b) (neg.f64 (sin.f64 b)))
(fma.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64) (neg.f64 (sin.f64 b)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 b) a) (neg.f64 (sin.f64 b)))
(fma.f64 (cos.f64 b) (*.f64 #s(literal -1/2 binary64) a) (neg.f64 (sin.f64 b)))
(fma.f64 a (*.f64 (cos.f64 b) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 b)))
(-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (neg.f64 (neg.f64 (sin.f64 b))))
(-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b))
(+.f64 (neg.f64 (sin.f64 b)) (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)))
(+.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 b)))
(*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 b)) a)
(*.f64 (*.f64 #s(literal -1/2 binary64) a) (cos.f64 b))
(*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 b) a))
(*.f64 (cos.f64 b) (*.f64 #s(literal -1/2 binary64) a))
(*.f64 a (*.f64 (cos.f64 b) #s(literal -1/2 binary64)))
#s(literal -1/2 binary64)
(*.f64 (cos.f64 b) a)
(*.f64 a (cos.f64 b))

eval82.0ms (1.8%)

Memory
-29.4MiB live, 115.3MiB allocated; 13ms collecting garbage
Compiler

Compiled 7 361 to 3 380 computations (54.1% saved)

prune58.0ms (1.3%)

Memory
-6.0MiB live, 93.5MiB allocated; 5ms collecting garbage
Pruning

66 alts after pruning (61 fresh and 5 done)

PrunedKeptTotal
New55019569
Fresh34245
Picked415
Done044
Total55766623
Accuracy
99.9%
Counts
623 → 66
Alt Table
Click to see full alt table
StatusAccuracyProgram
74.7%
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
54.2%
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))))
54.8%
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
54.8%
(*.f64 (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))) r)
49.3%
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
74.8%
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
56.4%
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))) (sin.f64 b))
56.9%
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) b))) (sin.f64 b))
74.7%
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
74.8%
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) r) (sin.f64 b))
54.2%
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
54.6%
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
8.3%
(*.f64 r (/.f64 (sin.f64 (+.f64 (neg.f64 b) (PI.f64))) (cos.f64 (+.f64 a b))))
98.2%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64))))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64)))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
99.1%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (PI.f64)))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (PI.f64))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
75.6%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (sin.f64 (+.f64 (PI.f64) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
29.7%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a)) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a))) #s(literal 2 binary64)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
54.3%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))))
58.1%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) #s(literal 1 binary64))))))
65.2%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
57.2%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) #s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1 binary64)))) (*.f64 (cos.f64 b) (cos.f64 a)))))
54.9%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (cos.f64 a)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (sin.f64 a)))))
58.6%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (sin.f64 b)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
39.0%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
37.1%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) #s(approx (+ a b) b)))))
38.5%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b) a))))
38.6%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (* 1/2 (PI)) (+ a b)) (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
62.6%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a)))))))
56.9%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
51.2%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
53.9%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a #s(approx (- (* -1/2 (* a (cos b))) (sin b)) (*.f64 #s(literal -1/2 binary64) a)))))))
54.6%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
32.7%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64))))))))))
32.7%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
33.7%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
9.6%
(*.f64 r (/.f64 (cos.f64 (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 a b))))
50.2%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
33.9%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
31.0%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
49.1%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
56.9%
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) b))) (sin.f64 b)))
54.5%
(*.f64 r (*.f64 #s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (sin.f64 b)))
49.7%
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
34.0%
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
74.5%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))
99.5%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
99.4%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))
99.3%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (fma.f64 (sin.f64 a) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 b)))))
99.3%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (fma.f64 (sin.f64 b) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 b) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
54.3%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
65.2%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
62.9%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) #s(approx (* (sin a) (sin b)) (*.f64 b (sin.f64 a))) (*.f64 (cos.f64 a) (cos.f64 b)))))
99.5%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
56.8%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
49.9%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (*.f64 (cos.f64 a) (cos.f64 b)))))
49.5%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 #s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
34.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
33.5%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
49.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
31.8%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
31.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
33.1%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
49.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
49.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
Compiler

Compiled 2 410 to 2 229 computations (7.5% saved)

series50.0ms (1.1%)

Memory
6.2MiB live, 52.8MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05862738
Stop Event
iter-limit
Counts
39 → 109
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(*.f64 r (sin.f64 b))
r
(sin.f64 b)
b
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))
(neg.f64 (sin.f64 a))
(sin.f64 a)
a
(*.f64 (cos.f64 b) (cos.f64 a))
(cos.f64 b)
(cos.f64 a)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))
(*.f64 b r)
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))
#s(literal 1 binary64)
(*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))
#s(literal -1/2 binary64)
(pow.f64 a #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a)))
#s(approx (cos (+ a b)) (cos.f64 a))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))) (sin.f64 b))
(/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b))))))
(cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))
#s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b))))
(*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))
(+.f64 #s(literal 1 binary64) (/.f64 a b))
(/.f64 a b)
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
(/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b))))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))
#s(literal -1 binary64)
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b))
Outputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
#s(approx (* r (sin b)) (*.f64 r (sin.f64 b)))
#s(approx r r)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 a b))))
#s(approx (/ (* b r) (cos a)) (/.f64 (*.f64 b r) (cos.f64 a)))
#s(approx (* b r) (*.f64 b r))
#s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 (+.f64 a b))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (+.f64 (/.f64 (*.f64 a (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64)))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (cos.f64 b)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 3 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (cos.f64 b))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 b) (*.f64 a (fma.f64 #s(literal -1 binary64) (sin.f64 b) (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b)))))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 b) (*.f64 a (fma.f64 #s(literal -1 binary64) (sin.f64 b) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 #s(literal 1/6 binary64) (*.f64 a (sin.f64 b)))))))))
#s(approx (neg (sin a)) (*.f64 #s(literal -1 binary64) a))
#s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1 binary64))))
#s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1/6 binary64) (*.f64 #s(literal -1/120 binary64) (pow.f64 a #s(literal 2 binary64))))) #s(literal 1 binary64))))
#s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1/6 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/120 binary64))))) #s(literal 1 binary64))))
#s(approx (sin a) a)
#s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 a #s(literal 2 binary64))))))
#s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 a #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (cos.f64 b)))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (cos.f64 b)))))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (cos.f64 b)) (*.f64 #s(literal 1/24 binary64) (cos.f64 b))))))))
#s(approx (cos a) #s(literal 1 binary64))
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (pow.f64 a #s(literal 2 binary64))))) #s(literal 1/2 binary64)))))
#s(approx (/ (* b r) (cos a)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (*.f64 b r)) (*.f64 b r)))
#s(approx (/ (* b r) (cos a)) (fma.f64 b r (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (*.f64 b r) (*.f64 #s(literal 1/24 binary64) (*.f64 b r))))) (*.f64 #s(literal -1/2 binary64) (*.f64 b r))))))
#s(approx (/ (* b r) (cos a)) (fma.f64 b r (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 b r) (fma.f64 #s(literal 1/48 binary64) (*.f64 b r) (*.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 b r) (*.f64 #s(literal 1/24 binary64) (*.f64 b r)))))))) (fma.f64 #s(literal -1/4 binary64) (*.f64 b r) (*.f64 #s(literal 1/24 binary64) (*.f64 b r))))) (*.f64 #s(literal -1/2 binary64) (*.f64 b r))))))
#s(approx (* -1/2 (pow a 2)) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))
#s(approx (pow a 2) (pow.f64 a #s(literal 2 binary64)))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 b)))
#s(approx (/ (sin b) (cos (+ a b))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (sin.f64 b) (cos.f64 b))))
#s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b))))) (cos.f64 b)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 3 binary64)) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 b) (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 (sin.f64 b) (cos.f64 b))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 a (fma.f64 #s(literal -1/2 binary64) (cos.f64 b) (*.f64 #s(literal 1/6 binary64) (*.f64 a (sin.f64 b))))) (sin.f64 b)))))
#s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 b)))
#s(approx (/ r (cos (+ a b))) (+.f64 (/.f64 r (cos.f64 b)) (/.f64 (*.f64 a (*.f64 r (sin.f64 b))) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (/ r (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 b)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 r (cos.f64 b))))
#s(approx (/ r (cos (+ a b))) (fma.f64 a (-.f64 (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 a (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 b)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (sin.f64 b)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 b) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 b))))) (cos.f64 b)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64))) (pow.f64 (cos.f64 b) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 b)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 b)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) (/.f64 r (cos.f64 b))))
#s(approx (+ a b) b)
#s(approx (+ a b) (+.f64 a b))
#s(approx (+ 1 (/ a b)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))
#s(approx (/ a b) (/.f64 a b))
#s(approx (* (sin a) (sin b)) (*.f64 a (sin.f64 b)))
#s(approx (* (sin a) (sin b)) (*.f64 a (+.f64 (sin.f64 b) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (sin.f64 b))))))
#s(approx (* (sin a) (sin b)) (*.f64 a (+.f64 (sin.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 b) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (sin.f64 b))))))))
#s(approx (* (sin a) (sin b)) (*.f64 a (+.f64 (sin.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 b) (*.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (sin.f64 b)) (*.f64 #s(literal 1/120 binary64) (sin.f64 b)))))))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
#s(approx (neg (sin a)) (*.f64 #s(literal -1 binary64) (sin.f64 a)))
#s(approx (sin a) (sin.f64 a))
#s(approx (* (cos b) (cos a)) (*.f64 (cos.f64 a) (cos.f64 b)))
#s(approx (cos a) (cos.f64 a))
#s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (cos (+ a b)) (cos.f64 (+.f64 a b)))
#s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a))))
#s(approx (+ 1 (/ a b)) (*.f64 a (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b))))
#s(approx (* (sin a) (sin b)) (*.f64 (sin.f64 a) (sin.f64 b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (cos (+ a b)) (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a))))
#s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 (-.f64 b (*.f64 #s(literal -1 binary64) a)))))
#s(approx (+ a b) (*.f64 #s(literal -1 binary64) (*.f64 a (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 b a)) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 b (+.f64 (/.f64 r (cos.f64 a)) (/.f64 (*.f64 b (*.f64 r (sin.f64 a))) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (cos.f64 a)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))) (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a)))))
#s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r)))))
#s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) r (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r)))))))
#s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) r (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r) (*.f64 #s(literal 1/120 binary64) r))))))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 b #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 b #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 b (fma.f64 #s(literal -1 binary64) (sin.f64 a) (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a)))))))
#s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 b (fma.f64 #s(literal -1 binary64) (sin.f64 a) (*.f64 b (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 #s(literal 1/6 binary64) (*.f64 b (sin.f64 a)))))))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 a) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (cos.f64 a)))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (cos.f64 a)))))))
#s(approx (* (cos b) (cos a)) (+.f64 (cos.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (cos.f64 a)) (*.f64 #s(literal 1/24 binary64) (cos.f64 a))))))))
#s(approx (cos b) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 b #s(literal 2 binary64)))))
#s(approx (cos b) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 b #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (cos b) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (pow.f64 b #s(literal 2 binary64))))) #s(literal 1/2 binary64)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 b (+.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (/.f64 (*.f64 b (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 b (fma.f64 b (-.f64 (*.f64 b (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (cos.f64 a)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (cos.f64 a)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))
#s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 b (fma.f64 #s(literal -1/2 binary64) (cos.f64 a) (*.f64 #s(literal 1/6 binary64) (*.f64 b (sin.f64 a))))) (sin.f64 a)))))
#s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a)))
#s(approx (/ r (cos (+ a b))) (+.f64 (/.f64 r (cos.f64 a)) (/.f64 (*.f64 b (*.f64 r (sin.f64 a))) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))
#s(approx (/ r (cos (+ a b))) (fma.f64 b (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a))))
#s(approx (/ r (cos (+ a b))) (fma.f64 b (-.f64 (*.f64 b (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 b (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 a) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a))))) (cos.f64 a)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (pow.f64 (sin.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (*.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) (/.f64 r (cos.f64 a))))
#s(approx (+ 1 (/ a b)) (/.f64 (+.f64 a b) b))
#s(approx (* (sin a) (sin b)) (*.f64 b (sin.f64 a)))
#s(approx (* (sin a) (sin b)) (*.f64 b (+.f64 (sin.f64 a) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (sin.f64 a))))))
#s(approx (* (sin a) (sin b)) (*.f64 b (+.f64 (sin.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 a) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (sin.f64 a))))))))
#s(approx (* (sin a) (sin b)) (*.f64 b (+.f64 (sin.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) (sin.f64 a)) (*.f64 #s(literal 1/120 binary64) (sin.f64 a)))))))))
#s(approx (sin b) (sin.f64 b))
#s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
#s(approx (cos (+ a b)) (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b))))
#s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 (-.f64 a (*.f64 #s(literal -1 binary64) b)))))
#s(approx (+ a b) (*.f64 #s(literal -1 binary64) (*.f64 b (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 a b)) #s(literal 1 binary64)))))
Calls

9 calls:

TimeVariablePointExpression
5.0ms
b
@-inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (* r (sin b)) r (sin b) b (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (neg (sin a)) (sin a) a (* (cos b) (cos a)) (cos b) (cos a) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (cos a) (+ 1 (* -1/2 (pow a 2))) 1 (* -1/2 (pow a 2)) -1/2 (pow a 2) 2 (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (* (/ r (cos (+ a b))) (sin b)) (/ r (cos (+ a b))) (cos (+ a b)) (+ a b) (* b (+ 1 (/ a b))) (+ 1 (/ a b)) (/ a b) (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) -1 (* (sin a) (sin b)) (* (cos a) (cos b)))
4.0ms
r
@-inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (* r (sin b)) r (sin b) b (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (neg (sin a)) (sin a) a (* (cos b) (cos a)) (cos b) (cos a) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (cos a) (+ 1 (* -1/2 (pow a 2))) 1 (* -1/2 (pow a 2)) -1/2 (pow a 2) 2 (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (* (/ r (cos (+ a b))) (sin b)) (/ r (cos (+ a b))) (cos (+ a b)) (+ a b) (* b (+ 1 (/ a b))) (+ 1 (/ a b)) (/ a b) (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) -1 (* (sin a) (sin b)) (* (cos a) (cos b)))
4.0ms
a
@inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (* r (sin b)) r (sin b) b (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (neg (sin a)) (sin a) a (* (cos b) (cos a)) (cos b) (cos a) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (cos a) (+ 1 (* -1/2 (pow a 2))) 1 (* -1/2 (pow a 2)) -1/2 (pow a 2) 2 (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (* (/ r (cos (+ a b))) (sin b)) (/ r (cos (+ a b))) (cos (+ a b)) (+ a b) (* b (+ 1 (/ a b))) (+ 1 (/ a b)) (/ a b) (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) -1 (* (sin a) (sin b)) (* (cos a) (cos b)))
4.0ms
a
@-inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (* r (sin b)) r (sin b) b (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (neg (sin a)) (sin a) a (* (cos b) (cos a)) (cos b) (cos a) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (cos a) (+ 1 (* -1/2 (pow a 2))) 1 (* -1/2 (pow a 2)) -1/2 (pow a 2) 2 (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (* (/ r (cos (+ a b))) (sin b)) (/ r (cos (+ a b))) (cos (+ a b)) (+ a b) (* b (+ 1 (/ a b))) (+ 1 (/ a b)) (/ a b) (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) -1 (* (sin a) (sin b)) (* (cos a) (cos b)))
4.0ms
r
@inf
((* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (* r (sin b)) r (sin b) b (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (neg (sin a)) (sin a) a (* (cos b) (cos a)) (cos b) (cos a) (* r (/ (sin b) (cos (+ a b)))) (/ (* b r) (cos a)) (* b r) (cos a) (+ 1 (* -1/2 (pow a 2))) 1 (* -1/2 (pow a 2)) -1/2 (pow a 2) 2 (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (* (/ r (cos (+ a b))) (sin b)) (/ r (cos (+ a b))) (cos (+ a b)) (+ a b) (* b (+ 1 (/ a b))) (+ 1 (/ a b)) (/ a b) (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))) -1 (* (sin a) (sin b)) (* (cos a) (cos b)))

rewrite203.0ms (4.6%)

Memory
1.6MiB live, 92.5MiB allocated; 7ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
053356
082356
1322298
22486298
08205290
125041290
Stop Event
saturated
node-limit
iter-limit
Counts
39 → 546
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(*.f64 r (sin.f64 b))
r
(sin.f64 b)
b
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))
(neg.f64 (sin.f64 a))
(sin.f64 a)
a
(*.f64 (cos.f64 b) (cos.f64 a))
(cos.f64 b)
(cos.f64 a)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))
(*.f64 b r)
#s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))
#s(literal 1 binary64)
(*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))
#s(literal -1/2 binary64)
(pow.f64 a #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a)))
#s(approx (cos (+ a b)) (cos.f64 a))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))) (sin.f64 b))
(/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b))))))
(cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))
#s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b))))
(*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))
(+.f64 #s(literal 1 binary64) (/.f64 a b))
(/.f64 a b)
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
(/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b))))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))
#s(literal -1 binary64)
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b))
Outputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
(*.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 (+.f64 a b)))))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (*.f64 r (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)))))
(*.f64 (sin.f64 b) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) r))
(*.f64 (sin.f64 b) (/.f64 r (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (*.f64 (sin.f64 b) r) #s(literal 1 binary64)) (cos.f64 (+.f64 a b)))
(/.f64 (neg.f64 (*.f64 (neg.f64 r) (sin.f64 b))) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 a b)))))
(neg.f64 (/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) r)
(*.f64 r (sin.f64 b))
r
(sin.f64 b)
b
(/.f64 (fma.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64) (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))))) #s(literal 4 binary64))
(neg.f64 (neg.f64 (cos.f64 (+.f64 a b))))
(sin.f64 (neg.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)))))
(sin.f64 (neg.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (-.f64 (neg.f64 a) b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b))) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64)) (PI.f64)))
(sin.f64 (+.f64 (-.f64 (neg.f64 b) a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (+.f64 a b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 b)))
(sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) b))
(sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 a)))
(sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) a))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)))
(fma.f64 (sin.f64 (-.f64 (neg.f64 b) a)) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(fma.f64 (sin.f64 (fabs.f64 (+.f64 a b))) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b))))
(fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (cos.f64 b) (cos.f64 (*.f64 (neg.f64 b) (/.f64 a b))) (*.f64 (sin.f64 b) (sin.f64 (*.f64 (neg.f64 b) (/.f64 a b)))))
(fma.f64 (cos.f64 b) (cos.f64 (*.f64 (/.f64 (neg.f64 a) b) b)) (*.f64 (sin.f64 b) (sin.f64 (*.f64 (/.f64 (neg.f64 a) b) b))))
(fma.f64 (cos.f64 b) (cos.f64 (neg.f64 (*.f64 (/.f64 a b) b))) (*.f64 (sin.f64 b) (sin.f64 (neg.f64 (*.f64 (/.f64 a b) b)))))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 (*.f64 (/.f64 a b) b)) (cos.f64 b)) (*.f64 (sin.f64 (*.f64 (/.f64 a b) b)) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 (*.f64 (/.f64 a b) b))) (*.f64 (sin.f64 b) (sin.f64 (*.f64 (/.f64 a b) b))))
(-.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 (sin.f64 a) (cos.f64 (-.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 a) (sin.f64 (-.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (neg.f64 (neg.f64 (sin.f64 b)))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (neg.f64 (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal -1 binary64)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 b)) (neg.f64 (sin.f64 a))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (fabs.f64 (neg.f64 (fabs.f64 (+.f64 a b)))))
(cos.f64 (fabs.f64 (fabs.f64 (fabs.f64 (+.f64 a b)))))
(cos.f64 (fabs.f64 (-.f64 (neg.f64 a) b)))
(cos.f64 (+.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 a b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (-.f64 (neg.f64 b) a) (PI.f64)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (fabs.f64 (+.f64 a b)) (PI.f64)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (+.f64 a b) (PI.f64)) (PI.f64)))
(cos.f64 (neg.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (fabs.f64 (fabs.f64 (+.f64 a b))))
(cos.f64 (-.f64 (neg.f64 a) b))
(cos.f64 (-.f64 (neg.f64 b) a))
(cos.f64 (fabs.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 b) a)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 (fabs.f64 (+.f64 a b))) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b))))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 (*.f64 (neg.f64 b) (/.f64 a b)))) (*.f64 (sin.f64 b) (sin.f64 (*.f64 (neg.f64 b) (/.f64 a b)))))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 (*.f64 (/.f64 (neg.f64 a) b) b))) (*.f64 (sin.f64 b) (sin.f64 (*.f64 (/.f64 (neg.f64 a) b) b))))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 (neg.f64 (*.f64 (/.f64 a b) b)))) (*.f64 (sin.f64 b) (sin.f64 (neg.f64 (*.f64 (/.f64 a b) b)))))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 (cos.f64 b))) (cos.f64 a)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (neg.f64 (neg.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(*.f64 #s(literal -1 binary64) (sin.f64 a))
(*.f64 (sin.f64 a) #s(literal -1 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 a (PI.f64))) (neg.f64 (sin.f64 a))) #s(literal 2 binary64))
(neg.f64 (sin.f64 a))
(sin.f64 (+.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (neg.f64 a))
(sin.f64 (+.f64 (PI.f64) a))
(fma.f64 #s(literal 0 binary64) (cos.f64 a) (neg.f64 (sin.f64 a)))
(fma.f64 #s(literal -1 binary64) (sin.f64 a) (*.f64 (cos.f64 a) #s(literal 0 binary64)))
(fma.f64 (cos.f64 a) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 a) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(fma.f64 (cos.f64 a) #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 a)) #s(literal 1 binary64)))
(fma.f64 (sin.f64 a) #s(literal -1 binary64) (*.f64 (cos.f64 a) #s(literal 0 binary64)))
(-.f64 (*.f64 #s(literal 0 binary64) (cos.f64 a)) (*.f64 #s(literal 1 binary64) (sin.f64 a)))
(-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (PI.f64)))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (PI.f64)))))
(-.f64 (*.f64 (cos.f64 a) #s(literal 0 binary64)) (*.f64 (sin.f64 a) #s(literal 1 binary64)))
(cos.f64 (fabs.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(cos.f64 (fabs.f64 (fabs.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(cos.f64 (neg.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))
(cos.f64 (fabs.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))
(cos.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))
(+.f64 (*.f64 #s(literal 0 binary64) (cos.f64 a)) (neg.f64 (sin.f64 a)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 a) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(+.f64 (*.f64 (cos.f64 a) #s(literal 0 binary64)) (*.f64 (neg.f64 (sin.f64 a)) #s(literal 1 binary64)))
(+.f64 (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) #s(literal 0 binary64)))
(sin.f64 a)
a
(*.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 b) (cos.f64 a))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (neg.f64 b))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 b))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 a)) b)) (cos.f64 (-.f64 (neg.f64 (fabs.f64 a)) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (neg.f64 b))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) (fabs.f64 b))) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 a)) b)) (cos.f64 (-.f64 (neg.f64 (neg.f64 a)) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 b))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 b))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 a)) b)) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 a)) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (fabs.f64 a) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 a) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (fabs.f64 a) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (neg.f64 (neg.f64 b)))) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 (neg.f64 a) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 a (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (neg.f64 (fabs.f64 b)))) (cos.f64 (-.f64 a (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (fabs.f64 (fabs.f64 b)))) (cos.f64 (-.f64 a (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (fabs.f64 a))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) (neg.f64 a))) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 b)) a)) (cos.f64 (-.f64 (neg.f64 (neg.f64 b)) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 a))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) (neg.f64 a))) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (fabs.f64 b)) a)) (cos.f64 (-.f64 (neg.f64 (fabs.f64 b)) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 a))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 a))) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (fabs.f64 b)) a)) (cos.f64 (-.f64 (fabs.f64 (fabs.f64 b)) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (neg.f64 b) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 b) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 (fabs.f64 b) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 (fabs.f64 b) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (neg.f64 (fabs.f64 a)))) (cos.f64 (-.f64 b (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (neg.f64 (neg.f64 a)))) (cos.f64 (-.f64 b (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (fabs.f64 (fabs.f64 a)))) (cos.f64 (-.f64 b (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))) (cos.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))) (cos.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))) (cos.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))) (cos.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b))) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b)) (sin.f64 (+.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b)))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b))) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b)) (sin.f64 (+.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (neg.f64 b)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (neg.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (neg.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fabs.f64 (fabs.f64 b)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fabs.f64 (fabs.f64 b))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a)))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a))) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a)) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a))) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a)) (sin.f64 (+.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (neg.f64 a)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (neg.f64 (neg.f64 a))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fabs.f64 (fabs.f64 a)))) (sin.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fabs.f64 (fabs.f64 a))))) #s(literal 2 binary64))
(/.f64 (neg.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal -2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (neg.f64 b))) (cos.f64 (-.f64 (fabs.f64 a) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) (fabs.f64 b))) (cos.f64 (-.f64 (fabs.f64 a) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 a) b)) (cos.f64 (-.f64 (fabs.f64 a) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 a) (fabs.f64 b))) (cos.f64 (-.f64 (neg.f64 a) (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (fabs.f64 b))) (cos.f64 (-.f64 a (fabs.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 b) (fabs.f64 a))) (cos.f64 (-.f64 (neg.f64 b) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (fabs.f64 a))) (cos.f64 (-.f64 (fabs.f64 b) (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) (neg.f64 a))) (cos.f64 (-.f64 (fabs.f64 b) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 b) a)) (cos.f64 (-.f64 (fabs.f64 b) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (fabs.f64 a))) (cos.f64 (-.f64 b (fabs.f64 a)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a) (fma.f64 (PI.f64) #s(literal 1/2 binary64) b)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))) (cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b) (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(+.f64 (/.f64 (cos.f64 (+.f64 a b)) #s(literal 2 binary64)) (/.f64 (cos.f64 (-.f64 b a)) #s(literal 2 binary64)))
(sin.f64 (+.f64 (neg.f64 (neg.f64 b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 b)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) b))
(fma.f64 (sin.f64 (fabs.f64 b)) #s(literal 0 binary64) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(fma.f64 (neg.f64 (sin.f64 b)) #s(literal 0 binary64) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 b) (*.f64 #s(literal 0 binary64) (sin.f64 b)))
(fma.f64 (sin.f64 b) #s(literal 0 binary64) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(-.f64 (*.f64 (sin.f64 b) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 b) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(cos.f64 (fabs.f64 (neg.f64 (neg.f64 b))))
(cos.f64 (fabs.f64 (neg.f64 (fabs.f64 b))))
(cos.f64 (fabs.f64 (fabs.f64 (fabs.f64 b))))
(cos.f64 (neg.f64 (neg.f64 b)))
(cos.f64 (neg.f64 (fabs.f64 b)))
(cos.f64 (fabs.f64 (fabs.f64 b)))
(cos.f64 (neg.f64 b))
(cos.f64 (fabs.f64 b))
(cos.f64 b)
(+.f64 (*.f64 (sin.f64 (fabs.f64 b)) #s(literal 0 binary64)) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 b)) (*.f64 #s(literal 0 binary64) (sin.f64 b)))
(+.f64 (*.f64 (neg.f64 (sin.f64 b)) #s(literal 0 binary64)) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 b) #s(literal 0 binary64)) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 a)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (neg.f64 a)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 a)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))
(fma.f64 (sin.f64 (fabs.f64 a)) #s(literal 0 binary64) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 a) (*.f64 #s(literal 0 binary64) (sin.f64 a)))
(fma.f64 (neg.f64 (sin.f64 a)) #s(literal 0 binary64) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(fma.f64 (sin.f64 a) #s(literal 0 binary64) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(cos.f64 (fabs.f64 (neg.f64 (fabs.f64 a))))
(cos.f64 (fabs.f64 (neg.f64 (neg.f64 a))))
(cos.f64 (fabs.f64 (fabs.f64 (fabs.f64 a))))
(cos.f64 (neg.f64 (fabs.f64 a)))
(cos.f64 (neg.f64 (neg.f64 a)))
(cos.f64 (fabs.f64 (fabs.f64 a)))
(cos.f64 (fabs.f64 a))
(cos.f64 (neg.f64 a))
(cos.f64 a)
(+.f64 (*.f64 (sin.f64 (fabs.f64 a)) #s(literal 0 binary64)) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) #s(literal 0 binary64)) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 #s(literal 0 binary64) (sin.f64 a)))
(+.f64 (*.f64 (sin.f64 a) #s(literal 0 binary64)) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b)
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r))
(*.f64 (*.f64 (neg.f64 b) r) (/.f64 #s(literal 1 binary64) (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(*.f64 (*.f64 b r) (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(*.f64 b (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(/.f64 (*.f64 (*.f64 b r) #s(literal 1 binary64)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 b) r)) (neg.f64 (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(/.f64 (*.f64 (neg.f64 b) r) (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(neg.f64 (/.f64 (*.f64 b r) (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(neg.f64 (/.f64 (*.f64 (neg.f64 b) r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(*.f64 b r)
(*.f64 r b)
#s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (*.f64 (*.f64 a a) #s(literal -1/2 binary64)) #s(literal 2 binary64) #s(literal 2 binary64)) #s(literal 2 binary64))
(neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 a a)) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal 1 binary64) (*.f64 a a)) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) a) a #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 a a) #s(literal -1/2 binary64)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 a a) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 a a) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 a (*.f64 a #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 a a) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 a a)))
(+.f64 (*.f64 (*.f64 a a) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (neg.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 a a))))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 a a) #s(literal -1/2 binary64)))
#s(literal 1 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 a a)) #s(literal -1/2 binary64))
(*.f64 (*.f64 #s(literal -1/2 binary64) a) a)
(*.f64 (*.f64 (*.f64 a a) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 a a) #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) (*.f64 a a))
(*.f64 #s(literal 1 binary64) (*.f64 (*.f64 a a) #s(literal -1/2 binary64)))
(*.f64 a (*.f64 a #s(literal -1/2 binary64)))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 (*.f64 a a) #s(literal -1/2 binary64))) #s(literal 2 binary64))
#s(literal -1/2 binary64)
(*.f64 (fabs.f64 a) (fabs.f64 a))
(*.f64 (neg.f64 a) (neg.f64 a))
(*.f64 a a)
(pow.f64 a #s(literal 2 binary64))
(fabs.f64 (*.f64 a a))
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))) r)
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 (sin.f64 b) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))) r))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 #s(approx (cos (+ a b)) (cos.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (cos.f64 a)))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))) (sin.f64 b))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 #s(literal 1 binary64) (neg.f64 #s(approx (cos (+ a b)) (cos.f64 a)))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 (sin.f64 b) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 b))) (neg.f64 (neg.f64 #s(approx (cos (+ a b)) (cos.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) #s(literal 1 binary64)) #s(approx (cos (+ a b)) (cos.f64 a)))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 #s(approx (cos (+ a b)) (cos.f64 a))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a)))
(neg.f64 (/.f64 (sin.f64 b) (neg.f64 #s(approx (cos (+ a b)) (cos.f64 a)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 b)) #s(approx (cos (+ a b)) (cos.f64 a))))
#s(approx (cos (+ a b)) (cos.f64 a))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (+.f64 a b)))) (sin.f64 b))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) (+.f64 a b)))))
(*.f64 (sin.f64 b) (/.f64 r (cos.f64 #s(approx (+ a b) (+.f64 a b)))))
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) (+.f64 a b)))) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (+.f64 a b)))))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b)))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 #s(approx (+ a b) (+.f64 a b))))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) (+.f64 a b)))) r)
(*.f64 (neg.f64 r) (/.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b))))))
(*.f64 #s(literal 1 binary64) (/.f64 r (cos.f64 #s(approx (+ a b) (+.f64 a b)))))
(*.f64 r (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) (+.f64 a b)))))
(/.f64 (*.f64 r #s(literal 1 binary64)) (cos.f64 #s(approx (+ a b) (+.f64 a b))))
(/.f64 (neg.f64 (neg.f64 r)) (neg.f64 (neg.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b))))))
(/.f64 (neg.f64 r) (neg.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b)))))
(/.f64 r (cos.f64 #s(approx (+ a b) (+.f64 a b))))
(neg.f64 (/.f64 r (neg.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b))))))
(neg.f64 (/.f64 (neg.f64 r) (cos.f64 #s(approx (+ a b) (+.f64 a b)))))
(sin.f64 (+.f64 (neg.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b)))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 #s(approx (+ a b) (+.f64 a b)))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 #s(approx (+ a b) (+.f64 a b)))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 #s(approx (+ a b) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) #s(approx (+ a b) (+.f64 a b))))
(fma.f64 (sin.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b)))) #s(literal 0 binary64) (*.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b))) #s(literal 1 binary64)))
(fma.f64 (sin.f64 (fabs.f64 #s(approx (+ a b) (+.f64 a b)))) #s(literal 0 binary64) (*.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b))) #s(literal 1 binary64)))
(fma.f64 (sin.f64 #s(approx (+ a b) (+.f64 a b))) #s(literal 0 binary64) (*.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b))) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 #s(approx (+ a b) (+.f64 a b)))))
(-.f64 (*.f64 (sin.f64 #s(approx (+ a b) (+.f64 a b))) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b))) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(cos.f64 (fabs.f64 (neg.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b))))))
(cos.f64 (fabs.f64 (neg.f64 (fabs.f64 #s(approx (+ a b) (+.f64 a b))))))
(cos.f64 (fabs.f64 (fabs.f64 (fabs.f64 #s(approx (+ a b) (+.f64 a b))))))
(cos.f64 (neg.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b)))))
(cos.f64 (neg.f64 (fabs.f64 #s(approx (+ a b) (+.f64 a b)))))
(cos.f64 (fabs.f64 (fabs.f64 #s(approx (+ a b) (+.f64 a b)))))
(cos.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b))))
(cos.f64 (fabs.f64 #s(approx (+ a b) (+.f64 a b))))
(cos.f64 #s(approx (+ a b) (+.f64 a b)))
(+.f64 (*.f64 (sin.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b)))) #s(literal 0 binary64)) (*.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b))) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 (fabs.f64 #s(approx (+ a b) (+.f64 a b)))) #s(literal 0 binary64)) (*.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b))) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) (+.f64 a b)))) (*.f64 #s(literal 0 binary64) (sin.f64 #s(approx (+ a b) (+.f64 a b)))))
(+.f64 (*.f64 (sin.f64 #s(approx (+ a b) (+.f64 a b))) #s(literal 0 binary64)) (*.f64 (cos.f64 #s(approx (+ a b) (+.f64 a b))) #s(literal 1 binary64)))
#s(approx (+ a b) (+.f64 a b))
(*.f64 (-.f64 (/.f64 a b) #s(literal -1 binary64)) b)
(*.f64 (+.f64 a b) #s(literal 1 binary64))
(*.f64 b (-.f64 (/.f64 a b) #s(literal -1 binary64)))
(/.f64 (*.f64 b (+.f64 a b)) b)
(/.f64 (*.f64 (+.f64 a b) b) b)
(neg.f64 (-.f64 (neg.f64 b) a))
(fma.f64 (*.f64 a b) (/.f64 #s(literal 1 binary64) b) b)
(fma.f64 (/.f64 a b) b b)
(fma.f64 a (*.f64 (/.f64 #s(literal 1 binary64) b) b) b)
(fma.f64 b (/.f64 a b) b)
(-.f64 a (neg.f64 b))
(-.f64 b (*.f64 (neg.f64 b) (/.f64 a b)))
(-.f64 b (*.f64 (/.f64 (neg.f64 a) b) b))
(-.f64 b (neg.f64 (*.f64 (/.f64 a b) b)))
(-.f64 b (neg.f64 a))
(+.f64 (*.f64 (/.f64 a b) b) b)
(+.f64 a (neg.f64 (neg.f64 b)))
(+.f64 a b)
(+.f64 b (*.f64 (/.f64 a b) b))
(+.f64 b a)
(*.f64 (-.f64 (/.f64 a b) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (-.f64 (/.f64 a b) #s(literal -1 binary64)))
(*.f64 (+.f64 a b) (/.f64 #s(literal 1 binary64) b))
(/.f64 (*.f64 (-.f64 (/.f64 a b) #s(literal -1 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (/.f64 a b) #s(literal 2 binary64) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 #s(literal 1 binary64) (neg.f64 b) (neg.f64 a)) (neg.f64 b))
(/.f64 (fma.f64 (neg.f64 a) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 b))) (*.f64 (neg.f64 b) #s(literal 2 binary64)))
(/.f64 (fma.f64 a #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) b)) (*.f64 b #s(literal 2 binary64)))
(/.f64 (fma.f64 #s(literal 2 binary64) (neg.f64 b) (*.f64 (neg.f64 a) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (neg.f64 b)))
(/.f64 (fma.f64 #s(literal 2 binary64) b (*.f64 a #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) b))
(/.f64 (fma.f64 (neg.f64 a) #s(literal 2 binary64) (*.f64 (neg.f64 b) #s(literal 2 binary64))) (*.f64 (neg.f64 b) #s(literal 2 binary64)))
(/.f64 (fma.f64 a #s(literal 2 binary64) (*.f64 b #s(literal 2 binary64))) (*.f64 b #s(literal 2 binary64)))
(/.f64 (fma.f64 #s(literal 2 binary64) (neg.f64 b) (*.f64 #s(literal 2 binary64) (neg.f64 a))) (*.f64 #s(literal 2 binary64) (neg.f64 b)))
(/.f64 (fma.f64 #s(literal 2 binary64) b (*.f64 #s(literal 2 binary64) a)) (*.f64 #s(literal 2 binary64) b))
(/.f64 (-.f64 (neg.f64 b) a) (neg.f64 b))
(/.f64 (+.f64 a b) b)
(neg.f64 (-.f64 (/.f64 (neg.f64 a) b) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b) #s(literal 1 binary64))
(fma.f64 (/.f64 #s(literal 1 binary64) b) a #s(literal 1 binary64))
(fma.f64 (neg.f64 a) (/.f64 #s(literal 1 binary64) (neg.f64 b)) #s(literal 1 binary64))
(fma.f64 (/.f64 a b) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (/.f64 a b) #s(literal 1 binary64))
(fma.f64 a (/.f64 #s(literal 1 binary64) b) #s(literal 1 binary64))
(-.f64 (/.f64 a b) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (/.f64 (neg.f64 a) b))
(+.f64 (/.f64 b b) (/.f64 a b))
(+.f64 (/.f64 a b) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (/.f64 a b))
(*.f64 (*.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b))
(*.f64 (/.f64 #s(literal 1 binary64) b) a)
(*.f64 (neg.f64 a) (/.f64 #s(literal 1 binary64) (neg.f64 b)))
(*.f64 (/.f64 a b) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 a b))
(*.f64 a (/.f64 #s(literal 1 binary64) b))
(/.f64 (*.f64 #s(literal 2 binary64) (/.f64 a b)) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 a)) (neg.f64 b))
(/.f64 (*.f64 #s(literal 1 binary64) a) b)
(/.f64 (*.f64 a #s(literal 1 binary64)) b)
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 a)) (*.f64 #s(literal 2 binary64) (neg.f64 b)))
(/.f64 (*.f64 #s(literal 2 binary64) a) (*.f64 #s(literal 2 binary64) b))
(/.f64 (neg.f64 (neg.f64 a)) (neg.f64 (neg.f64 b)))
(/.f64 (neg.f64 a) (neg.f64 b))
(/.f64 a b)
(neg.f64 (/.f64 (neg.f64 a) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 (sin.f64 b) (/.f64 r (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (*.f64 (sin.f64 b) r))
(*.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 b) (/.f64 r (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(*.f64 (sin.f64 b) (*.f64 r (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
(*.f64 (sin.f64 b) (/.f64 r (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (*.f64 (sin.f64 b) r) #s(literal 1 binary64)) (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (neg.f64 (*.f64 (neg.f64 r) (sin.f64 b))) (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (neg.f64 (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
(neg.f64 (/.f64 (*.f64 (neg.f64 r) (sin.f64 b)) (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(neg.f64 (neg.f64 (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (cos.f64 b)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (neg.f64 (*.f64 (neg.f64 (cos.f64 b)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(fma.f64 (*.f64 #s(literal -1 binary64) (sin.f64 b)) (sin.f64 a) (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (neg.f64 (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (cos.f64 b)))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (neg.f64 (*.f64 (neg.f64 (cos.f64 b)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (*.f64 (neg.f64 (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (cos.f64 b)))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (neg.f64 (*.f64 (neg.f64 (cos.f64 b)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64) (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (cos.f64 b)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (neg.f64 (*.f64 (neg.f64 (cos.f64 b)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)))
(fma.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (cos.f64 b) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (neg.f64 (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (cos.f64 b)))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (neg.f64 (*.f64 (neg.f64 (cos.f64 b)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (*.f64 (neg.f64 (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (cos.f64 b)))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (neg.f64 (*.f64 (neg.f64 (cos.f64 b)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) #s(literal -1 binary64)) (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (cos.f64 b)))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (neg.f64 (*.f64 (neg.f64 (cos.f64 b)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (neg.f64 (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (cos.f64 b)))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (neg.f64 (*.f64 (neg.f64 (cos.f64 b)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)))
(-.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (neg.f64 (cos.f64 b)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal -1 binary64)))
(-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b)))
(-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 b)) (neg.f64 (sin.f64 a))))
(-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))
(-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (neg.f64 (neg.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (cos.f64 b)))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (neg.f64 (*.f64 (neg.f64 (cos.f64 b)) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(+.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)))
(+.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
#s(literal -1 binary64)
(*.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(-.f64 (/.f64 (cos.f64 (-.f64 b a)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 a b)) #s(literal 2 binary64)))
(*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b))
(*.f64 (cos.f64 b) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))

eval115.0ms (2.6%)

Memory
-0.8MiB live, 93.9MiB allocated; 13ms collecting garbage
Compiler

Compiled 8 657 to 3 943 computations (54.5% saved)

prune88.0ms (2%)

Memory
11.0MiB live, 105.3MiB allocated; 4ms collecting garbage
Pruning

84 alts after pruning (77 fresh and 7 done)

PrunedKeptTotal
New71031741
Fresh104656
Picked325
Done055
Total72384807
Accuracy
99.9%
Counts
807 → 84
Alt Table
Click to see full alt table
StatusAccuracyProgram
74.7%
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
54.8%
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
54.5%
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (cos.f64 a)))
54.8%
(*.f64 (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))) r)
49.3%
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
38.5%
(*.f64 (/.f64 r (sin.f64 (+.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (sin.f64 b))
74.8%
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
56.4%
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (fma.f64 (/.f64 a b) b b)))) (sin.f64 b))
69.8%
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (fma.f64 (*.f64 a b) (/.f64 #s(literal 1 binary64) b) b)))) (sin.f64 b))
53.2%
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (*.f64 (+.f64 a b) (/.f64 #s(literal 1 binary64) b)))))) (sin.f64 b))
52.8%
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b #s(approx (+ 1 (/ a b)) (*.f64 a (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))))))) (sin.f64 b))
56.9%
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) b))) (sin.f64 b))
74.7%
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
74.8%
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) r) (sin.f64 b))
54.5%
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))))
54.2%
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
54.6%
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (cos.f64 a))))
54.6%
(*.f64 (sin.f64 b) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))) r))
8.3%
(*.f64 r (/.f64 (sin.f64 (+.f64 (neg.f64 b) (PI.f64))) (cos.f64 (+.f64 a b))))
98.2%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64))))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64)))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
99.1%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (PI.f64)))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (PI.f64))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
75.6%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (sin.f64 (+.f64 (PI.f64) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
29.7%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a)) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a))) #s(literal 2 binary64)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
58.1%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) #s(literal 1 binary64))))))
57.2%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) #s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1 binary64)))) (*.f64 (cos.f64 b) (cos.f64 a)))))
54.9%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (cos.f64 a)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (sin.f64 a)))))
58.6%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (sin.f64 b)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
39.0%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
37.1%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) #s(approx (+ a b) b)))))
38.5%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b) a))))
62.6%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a)))))))
56.9%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
51.2%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
53.9%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a #s(approx (- (* -1/2 (* a (cos b))) (sin b)) (*.f64 #s(literal -1/2 binary64) a)))))))
38.6%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))))
37.4%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))
54.6%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
32.7%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
33.7%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
34.2%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))))
37.7%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
9.6%
(*.f64 r (/.f64 (cos.f64 (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 a b))))
50.2%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
33.9%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
31.0%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
49.1%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
49.2%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (cos.f64 a))))
56.9%
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) b))) (sin.f64 b)))
49.7%
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
34.0%
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
74.5%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))
99.3%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (fma.f64 (cos.f64 a) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 a) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
99.1%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (PI.f64)))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (PI.f64))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
75.5%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (sin.f64 (+.f64 (PI.f64) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
99.3%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))))))
99.5%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
65.2%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
99.4%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))
99.3%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (fma.f64 (sin.f64 a) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 b)))))
99.3%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (fma.f64 (sin.f64 b) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 b) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
52.1%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 a #s(literal 2 binary64)))))) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
54.2%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
62.9%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) #s(approx (* (sin a) (sin b)) (*.f64 b (sin.f64 a))) (*.f64 (cos.f64 a) (cos.f64 b)))))
99.5%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
56.8%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
49.9%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
31.0%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
31.7%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
49.5%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 #s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r))))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
54.3%
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 (sin.f64 b) (/.f64 r (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
34.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
33.5%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
49.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
31.8%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
21.5%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
33.1%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
49.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
31.9%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
49.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
31.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
31.8%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
31.8%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
Compiler

Compiled 2 777 to 2 068 computations (25.5% saved)

regimes163.0ms (3.6%)

Memory
-2.4MiB live, 282.4MiB allocated; 35ms collecting garbage
Counts
113 → 1
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64))))))))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (cos.f64 a)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))) r))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (*.f64 #s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (sin.f64 b)))
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) b))) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) #s(approx (+ a b) b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (* 1/2 (PI)) (+ a b)) (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) r) (sin.f64 b))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 (+.f64 (neg.f64 b) (PI.f64))) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))
(*.f64 (neg.f64 (sin.f64 b)) (*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))) r))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b) a))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (fma.f64 (/.f64 a b) b b)))) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 (neg.f64 a) b)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a #s(approx (- (* -1/2 (* a (cos b))) (sin b)) (*.f64 #s(literal -1/2 binary64) a)))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a)))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))) (sin.f64 b))
(*.f64 (/.f64 r (sin.f64 (+.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (sin.f64 b))
(*.f64 r (/.f64 (cos.f64 (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (fma.f64 (*.f64 a b) (/.f64 #s(literal 1 binary64) b) b)))) (sin.f64 b))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (*.f64 (+.f64 a b) (/.f64 #s(literal 1 binary64) b)))))) (sin.f64 b))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b #s(approx (+ 1 (/ a b)) (*.f64 a (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))))))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) #s(approx (* (sin a) (sin b)) (*.f64 b (sin.f64 a))) (*.f64 (cos.f64 a) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))))
(*.f64 (/.f64 r #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))) (sin.f64 b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 (sin.f64 b) (/.f64 r (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 a #s(literal 2 binary64)))))) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (*.f64 (cos.f64 a) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) #s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1 binary64)))) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 #s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r))))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 #s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (sin.f64 (+.f64 (PI.f64) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (sin.f64 (+.f64 (PI.f64) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (+.f64 (/.f64 (*.f64 a (*.f64 r (pow.f64 (sin.f64 b) #s(literal 2 binary64)))) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 (+.f64 a b)) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (cos.f64 b)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) a)) (sin.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (cos.f64 a)) (*.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b)) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a)) (sin.f64 (+.f64 (+.f64 (neg.f64 b) (*.f64 (PI.f64) #s(literal 1/2 binary64))) a))) #s(literal 2 binary64)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (PI.f64)))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (PI.f64))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (PI.f64)))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (PI.f64))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (fma.f64 (cos.f64 a) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 a) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (fma.f64 (sin.f64 b) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 b) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (fma.f64 (sin.f64 a) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 a) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (-.f64 (*.f64 (sin.f64 a) (cos.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64))))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64)))))) (*.f64 (cos.f64 b) (cos.f64 a)))))
Outputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
Calls

5 calls:

34.0ms
b
32.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
31.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
30.0ms
a
29.0ms
r
Results
AccuracySegmentsBranch
99.5%1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
99.5%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
99.5%1r
99.5%1a
99.5%1b
Compiler

Compiled 17 to 24 computations (-41.2% saved)

regimes144.0ms (3.2%)

Memory
18.5MiB live, 201.3MiB allocated; 30ms collecting garbage
Counts
95 → 1
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64))))))))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (cos.f64 a)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))) r))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (*.f64 #s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (sin.f64 b)))
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) b))) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) #s(approx (+ a b) b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (* 1/2 (PI)) (+ a b)) (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) r) (sin.f64 b))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 (+.f64 (neg.f64 b) (PI.f64))) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))
(*.f64 (neg.f64 (sin.f64 b)) (*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))) r))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b) a))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (fma.f64 (/.f64 a b) b b)))) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 (neg.f64 a) b)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a #s(approx (- (* -1/2 (* a (cos b))) (sin b)) (*.f64 #s(literal -1/2 binary64) a)))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a)))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))) (sin.f64 b))
(*.f64 (/.f64 r (sin.f64 (+.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (sin.f64 b))
(*.f64 r (/.f64 (cos.f64 (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (fma.f64 (*.f64 a b) (/.f64 #s(literal 1 binary64) b) b)))) (sin.f64 b))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (*.f64 (+.f64 a b) (/.f64 #s(literal 1 binary64) b)))))) (sin.f64 b))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b #s(approx (+ 1 (/ a b)) (*.f64 a (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))))))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) #s(approx (* (sin a) (sin b)) (*.f64 b (sin.f64 a))) (*.f64 (cos.f64 a) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))))
(*.f64 (/.f64 r #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))) (sin.f64 b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 (sin.f64 b) (/.f64 r (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 a #s(literal 2 binary64)))))) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (*.f64 (cos.f64 a) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) #s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1 binary64)))) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 #s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r))))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 #s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))
Outputs
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
Calls

5 calls:

34.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
28.0ms
a
27.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
27.0ms
b
23.0ms
r
Results
AccuracySegmentsBranch
99.5%1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
99.5%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
99.5%1r
99.5%1a
99.5%1b
Compiler

Compiled 17 to 24 computations (-41.2% saved)

regimes141.0ms (3.2%)

Memory
14.3MiB live, 198.4MiB allocated; 29ms collecting garbage
Counts
93 → 1
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64))))))))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (cos.f64 a)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))) r))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (*.f64 #s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (sin.f64 b)))
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) b))) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) #s(approx (+ a b) b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (* 1/2 (PI)) (+ a b)) (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) r) (sin.f64 b))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 (+.f64 (neg.f64 b) (PI.f64))) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))
(*.f64 (neg.f64 (sin.f64 b)) (*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))) r))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b) a))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (fma.f64 (/.f64 a b) b b)))) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 (neg.f64 a) b)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a #s(approx (- (* -1/2 (* a (cos b))) (sin b)) (*.f64 #s(literal -1/2 binary64) a)))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a)))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))) (sin.f64 b))
(*.f64 (/.f64 r (sin.f64 (+.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (sin.f64 b))
(*.f64 r (/.f64 (cos.f64 (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (fma.f64 (*.f64 a b) (/.f64 #s(literal 1 binary64) b) b)))) (sin.f64 b))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (*.f64 (+.f64 a b) (/.f64 #s(literal 1 binary64) b)))))) (sin.f64 b))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b #s(approx (+ 1 (/ a b)) (*.f64 a (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))))))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) #s(approx (* (sin a) (sin b)) (*.f64 b (sin.f64 a))) (*.f64 (cos.f64 a) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))))
(*.f64 (/.f64 r #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))) (sin.f64 b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 (sin.f64 b) (/.f64 r (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 a #s(literal 2 binary64)))))) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (*.f64 (cos.f64 a) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) #s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1 binary64)))) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 #s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r))))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 #s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
Calls

5 calls:

34.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
28.0ms
a
27.0ms
b
27.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
23.0ms
r
Results
AccuracySegmentsBranch
99.4%1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
99.4%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
99.4%1r
99.4%1a
99.4%1b
Compiler

Compiled 17 to 24 computations (-41.2% saved)

regimes159.0ms (3.6%)

Memory
12.3MiB live, 196.0MiB allocated; 52ms collecting garbage
Counts
92 → 1
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64))))))))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (cos.f64 a)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))) r))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (*.f64 #s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (sin.f64 b)))
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) b))) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) #s(approx (+ a b) b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (* 1/2 (PI)) (+ a b)) (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) r) (sin.f64 b))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 (sin.f64 b) r))
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 (+.f64 (neg.f64 b) (PI.f64))) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))
(*.f64 (neg.f64 (sin.f64 b)) (*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 (+.f64 a b))) r))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) b) a))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (fma.f64 (/.f64 a b) b b)))) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 (neg.f64 a) b)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a #s(approx (- (* -1/2 (* a (cos b))) (sin b)) (*.f64 #s(literal -1/2 binary64) a)))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 a (+.f64 #s(literal 1 binary64) (/.f64 b a)))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))) (sin.f64 b))
(*.f64 (/.f64 r (sin.f64 (+.f64 (neg.f64 #s(approx (+ a b) (+.f64 a b))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (sin.f64 b))
(*.f64 r (/.f64 (cos.f64 (+.f64 (neg.f64 b) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (cos.f64 (+.f64 a b))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (fma.f64 (*.f64 a b) (/.f64 #s(literal 1 binary64) b) b)))) (sin.f64 b))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b (*.f64 (+.f64 a b) (/.f64 #s(literal 1 binary64) b)))))) (sin.f64 b))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) (*.f64 b #s(approx (+ 1 (/ a b)) (*.f64 a (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))))))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a)))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 #s(literal -1 binary64) (*.f64 a (sin.f64 b)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))) (+.f64 (cos.f64 a) (*.f64 #s(literal -1 binary64) (*.f64 b (sin.f64 a)))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 #s(approx (sin a) a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) #s(approx (* (sin a) (sin b)) (*.f64 b (sin.f64 a))) (*.f64 (cos.f64 a) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b))))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (fma.f64 a (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 b (cos.f64 a))) (sin.f64 a)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))))
(*.f64 (/.f64 r #s(approx (cos (+ a b)) (+.f64 (cos.f64 b) (*.f64 a (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a (cos.f64 b))) (sin.f64 b)))))) (sin.f64 b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (*.f64 (sin.f64 b) (/.f64 r (-.f64 (*.f64 #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin a) (*.f64 a (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 a #s(literal 2 binary64)))))) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (fma.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64))))))) (*.f64 (cos.f64 a) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) #s(approx (neg (sin a)) (*.f64 a (-.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1 binary64)))) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 #s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r))))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 #s(approx (* r (sin b)) (*.f64 b (+.f64 r (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) r))))) (fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
Outputs
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) r) (sin.f64 b))
Calls

5 calls:

53.0ms
r
28.0ms
a
27.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
26.0ms
b
22.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Results
AccuracySegmentsBranch
74.8%1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
74.8%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
74.8%1r
74.8%1a
74.8%1b
Compiler

Compiled 17 to 24 computations (-41.2% saved)

regimes68.0ms (1.5%)

Memory
11.6MiB live, 102.4MiB allocated; 11ms collecting garbage
Counts
45 → 1
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64))))))))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (cos.f64 a)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 (sin.f64 b) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))) r))
(*.f64 (*.f64 (sin.f64 b) r) (/.f64 #s(literal 1 binary64) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (*.f64 #s(approx (/ 1 (cos (+ a b))) (/.f64 #s(literal 1 binary64) (cos.f64 a))) (sin.f64 b)))
(*.f64 r (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 #s(approx (+ a b) b))) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) #s(approx (+ a b) b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (* 1/2 (PI)) (+ a b)) (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
Outputs
(*.f64 (/.f64 r (cos.f64 (+.f64 a b))) (sin.f64 b))
Calls

5 calls:

16.0ms
a
16.0ms
r
11.0ms
b
11.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
11.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Results
AccuracySegmentsBranch
74.8%1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
74.8%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
74.8%1r
74.8%1b
74.8%1a
Compiler

Compiled 17 to 24 computations (-41.2% saved)

regimes63.0ms (1.4%)

Memory
-11.4MiB live, 82.5MiB allocated; 17ms collecting garbage
Counts
35 → 3
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64))))))))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) b))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (cos (+ a b)) (cos.f64 a)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (+.f64 a b)))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 #s(approx (+ a b) (*.f64 b (+.f64 #s(literal 1 binary64) (/.f64 a b)))))))
Outputs
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
(*.f64 (/.f64 r (cos.f64 #s(approx (+ a b) b))) (sin.f64 b))
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
Calls

5 calls:

20.0ms
a
13.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
9.0ms
r
9.0ms
b
9.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
Results
AccuracySegmentsBranch
73.5%3(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
59.0%2(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
63.5%2r
73.5%3b
74.2%3a
Compiler

Compiled 17 to 24 computations (-41.2% saved)

regimes46.0ms (1%)

Memory
-23.6MiB live, 67.8MiB allocated; 10ms collecting garbage
Counts
27 → 1
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64))))))))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
(*.f64 (sin.f64 b) (/.f64 r #s(approx (cos (+ a b)) (cos.f64 a))))
Outputs
(*.f64 #s(approx (/ r (cos (+ a b))) (/.f64 r (cos.f64 a))) (sin.f64 b))
Calls

5 calls:

11.0ms
b
7.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
7.0ms
r
7.0ms
a
7.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Results
AccuracySegmentsBranch
54.6%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
54.6%1r
54.6%1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
54.6%1b
54.6%1a
Compiler

Compiled 17 to 24 computations (-41.2% saved)

regimes38.0ms (0.9%)

Memory
6.2MiB live, 60.8MiB allocated; 4ms collecting garbage
Counts
25 → 3
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64))))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 b (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a b)) #s(literal 1/2 binary64))))))))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) #s(approx (cos (+ a b)) (cos.f64 a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 b (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 b #s(literal 2 binary64)))))) (cos.f64 (+.f64 a b))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
(*.f64 (/.f64 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
Calls

5 calls:

10.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
7.0ms
a
7.0ms
r
7.0ms
b
7.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Results
AccuracySegmentsBranch
54.3%3(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
49.7%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
54.5%3b
49.7%1r
49.7%1a
Compiler

Compiled 17 to 24 computations (-41.2% saved)

regimes7.0ms (0.1%)

Memory
14.9MiB live, 14.9MiB allocated; 0ms collecting garbage
Counts
20 → 3
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (cos.f64 a)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a)))) (/.f64 b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 a)) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (* 1/2 (PI)) (+ a b)))) (/.f64 b (sin.f64 (+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (+.f64 (neg.f64 a) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 a b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(approx (+ 1 (* -1/2 (pow a 2))) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 a #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (cos b) (* -1 (* a (sin b)))) (+.f64 #s(literal 1 binary64) (*.f64 b (fma.f64 #s(literal -1 binary64) a (*.f64 #s(literal -1/2 binary64) b))))))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r (cos.f64 a)) b))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
Calls

1 calls:

6.0ms
b
Results
AccuracySegmentsBranch
54.3%3b
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes16.0ms (0.4%)

Memory
-15.3MiB live, 31.3MiB allocated; 3ms collecting garbage
Counts
8 → 1
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (cos a) #s(literal 1 binary64)))))
Calls

5 calls:

5.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
3.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
3.0ms
b
3.0ms
a
3.0ms
r
Results
AccuracySegmentsBranch
37.7%1a
37.7%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
37.7%1r
37.7%1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
37.7%1b
Compiler

Compiled 17 to 24 computations (-41.2% saved)

regimes13.0ms (0.3%)

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

Total -1.5b remaining (-3.5%)

Threshold costs -1.5b (-3.5%)

Counts
7 → 1
Calls
Call 1
Inputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (/.f64 b #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 r #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin b) (neg (sin a))) (* (cos b) (cos a))))) (/.f64 (*.f64 b r) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (*.f64 b (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 b r)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 a #s(literal 2 binary64)))))))
Outputs
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) #s(approx (cos a) #s(literal 1 binary64))))
Calls

5 calls:

2.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
2.0ms
r
2.0ms
a
2.0ms
b
2.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Results
AccuracySegmentsBranch
33.1%1b
33.1%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
33.1%1r
33.1%1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
33.1%1a
Compiler

Compiled 17 to 24 computations (-41.2% saved)

bsearch36.0ms (0.8%)

Memory
9.4MiB live, 56.5MiB allocated; 2ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
8.0ms
5.60706970883248e-12
8.407189021830318e-12
25.0ms
-2984.0029127054604
-3.2408835551344756e-24
Samples
16.0ms108×1valid
8.0ms132×0valid
Compiler

Compiled 312 to 344 computations (-10.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-cos: 6.0ms (35.9% of total)
ival-sin: 5.0ms (29.9% of total)
adjust: 2.0ms (12% of total)
ival-mult!: 2.0ms (12% of total)
ival-add!: 1.0ms (6% of total)
ival-div!: 1.0ms (6% of total)

bsearch59.0ms (1.3%)

Memory
-6.4MiB live, 89.2MiB allocated; 7ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
29.0ms
0.35763612580346066
177626824984.3108
26.0ms
-3234809645.5431333
-54.79090196226129
Samples
29.0ms187×1valid
14.0ms117×0valid
Compiler

Compiled 506 to 546 computations (-7.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 35.0ms
ival-sin: 11.0ms (31.5% of total)
ival-cos: 11.0ms (31.5% of total)
ival-add!: 4.0ms (11.5% of total)
adjust: 4.0ms (11.5% of total)
ival-mult!: 4.0ms (11.5% of total)
ival-div!: 2.0ms (5.7% of total)

bsearch23.0ms (0.5%)

Memory
-19.3MiB live, 27.7MiB allocated; 3ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
20.0ms
0.35763612580346066
177626824984.3108
1.0ms
-3234809645.5431333
-54.79090196226129
Samples
11.0ms62×1valid
5.0ms50×0valid
Compiler

Compiled 468 to 508 computations (-8.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-sin: 4.0ms (31.7% of total)
ival-cos: 4.0ms (31.7% of total)
ival-div!: 2.0ms (15.9% of total)
adjust: 1.0ms (7.9% of total)
ival-mult!: 1.0ms (7.9% of total)
ival-add!: 0.0ms (0% of total)

derivations220.0ms (4.9%)

Memory
8.2MiB live, 212.8MiB allocated; 18ms collecting garbage
Stop Event
fuel
Compiler

Compiled 121 to 81 computations (33.1% saved)

preprocess107.0ms (2.4%)

Memory
3.4MiB live, 240.1MiB allocated; 16ms collecting garbage
Remove

(negabs r)

Compiler

Compiled 519 to 463 computations (10.8% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...