rsin B (should all be same)

Time bar (total: 5.8s)

start0.0ms (0%)

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

analyze264.0ms (4.6%)

Memory
-13.3MiB live, 467.8MiB allocated; 50ms 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.7s (29.1%)

Memory
21.4MiB live, 2 491.5MiB allocated; 364ms collecting garbage
Samples
979.0ms5 917×1valid
166.0ms2 339×0valid
Precisions
Click to see histograms. Total time spent on operations: 848.0ms
ival-cos: 324.0ms (38.2% of total)
ival-sin: 212.0ms (25% of total)
adjust: 128.0ms (15.1% of total)
ival-mult!: 75.0ms (8.8% of total)
ival-div!: 60.0ms (7.1% of total)
ival-add!: 48.0ms (5.7% of total)
Bogosity

explain260.0ms (4.5%)

Memory
31.5MiB live, 296.3MiB allocated; 94ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
66115(-3.869150684124669e+59 4.773303201359349e+60 -1.5360562326779282e-89)0-(cos.f64 (+.f64 a b))
00-0-(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
00-0-(+.f64 a b)
00-0-(sin.f64 b)
00-0-a
00-0-r
00-0-b
00-0-(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
cos.f64(cos.f64 (+.f64 a b))sensitivity1810
Confusion
Predicted +Predicted -
+660
-11575
Precision
0.36464088397790057
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+6600
-115075
Precision?
0.36464088397790057
Recall?
1.0
Freqs
test
numberfreq
075
1181
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
154.0ms350×1valid
10.0ms162×0valid
Compiler

Compiled 69 to 28 computations (59.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 79.0ms
ival-mult!: 38.0ms (48.3% of total)
ival-cos: 16.0ms (20.3% of total)
ival-sin: 12.0ms (15.2% of total)
adjust: 7.0ms (8.9% of total)
ival-div!: 4.0ms (5.1% of total)
ival-add!: 3.0ms (3.8% of total)

preprocess52.0ms (0.9%)

Memory
-18.3MiB live, 28.0MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03897
110397
220697
342897
477097
5163097
6349197
7651797
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.2%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Symmetry

(negabs r)

Compiler

Compiled 18 to 16 computations (11.1% saved)

series19.0ms (0.3%)

Memory
35.0MiB live, 35.0MiB allocated; 0ms collecting garbage
Counts
8 → 48
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)))) #s(hole binary64 (/ (* r (sin b)) (cos (+ a b)))))
#s(approx r #s(hole binary64 r))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos b)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))) (sin b))))))
#s(approx (+ a b) #s(hole binary64 b))
#s(approx (+ a b) #s(hole binary64 (+ a b)))
#s(approx a #s(hole binary64 a))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (+ a b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (+ a b))))
#s(approx (+ a b) #s(hole binary64 a))
#s(approx (+ a b) #s(hole binary64 (* a (+ 1 (/ b a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- b (* -1 a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- b (* -1 a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- b (* -1 a)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* a (- (* -1 (/ b a)) 1)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (sin b) #s(hole binary64 b))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* 1/120 (pow b 2)) 1/6))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/120 (* -1/5040 (pow b 2)))) 1/6))))))
#s(approx b #s(hole binary64 b))
#s(approx (cos (+ a b)) #s(hole binary64 (cos a)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* -1/2 (* b (cos a))) (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))) (sin a))))))
#s(approx (sin b) #s(hole binary64 (sin b)))
#s(approx (+ a b) #s(hole binary64 (* b (+ 1 (/ a b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- a (* -1 b))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- a (* -1 b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- a (* -1 b)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* b (- (* -1 (/ a b)) 1)))))
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)
3.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
a
@-inf
((* r (/ (sin b) (cos (+ a b)))) r (/ (sin b) (cos (+ a b))) (sin b) b (cos (+ a b)) (+ a b) a)

rewrite254.0ms (4.4%)

Memory
20.1MiB live, 294.5MiB allocated; 67ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02831294
02901148
116521098
088211057
Stop Event
iter-limit
node-limit
iter-limit
Counts
56 → 82
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
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (+ a b)))))
#s(approx r #s(hole binary64 r))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos b)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))) (sin b))))))
#s(approx (+ a b) #s(hole binary64 b))
#s(approx (+ a b) #s(hole binary64 (+ a b)))
#s(approx a #s(hole binary64 a))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (+ a b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (+ a b))))
#s(approx (+ a b) #s(hole binary64 a))
#s(approx (+ a b) #s(hole binary64 (* a (+ 1 (/ b a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- b (* -1 a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- b (* -1 a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- b (* -1 a)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* a (- (* -1 (/ b a)) 1)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (sin b) #s(hole binary64 b))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* 1/120 (pow b 2)) 1/6))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/120 (* -1/5040 (pow b 2)))) 1/6))))))
#s(approx b #s(hole binary64 b))
#s(approx (cos (+ a b)) #s(hole binary64 (cos a)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* -1/2 (* b (cos a))) (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))) (sin a))))))
#s(approx (sin b) #s(hole binary64 (sin b)))
#s(approx (+ a b) #s(hole binary64 (* b (+ 1 (/ a b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- a (* -1 b))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- a (* -1 b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- a (* -1 b)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* b (- (* -1 (/ a b)) 1)))))
Outputs
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 b) r))) (neg.f64 (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 (neg.f64 (neg.f64 (sin.f64 b))) (neg.f64 (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)))
(pow.f64 (sin.f64 b) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64)))
(sin.f64 b)
(exp.f64 (*.f64 (log.f64 (sin.f64 b)) #s(literal 1 binary64)))
b
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)) (fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
(fma.f64 (sin.f64 (+.f64 a b)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (neg.f64 (neg.f64 (+.f64 a b))))
(cos.f64 (neg.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (fma.f64 b b (-.f64 (*.f64 a a) (*.f64 b a))))
(/.f64 (neg.f64 (-.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (-.f64 a b)))
(/.f64 (neg.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64)))) (neg.f64 (fma.f64 a a (-.f64 (*.f64 b b) (*.f64 a b)))))
(/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 a b))
(/.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64))) (fma.f64 a a (-.f64 (*.f64 b b) (*.f64 a b))))
(-.f64 (/.f64 (*.f64 a a) (-.f64 a b)) (/.f64 (*.f64 b b) (-.f64 a b)))
(+.f64 (/.f64 (pow.f64 a #s(literal 3 binary64)) (fma.f64 a a (-.f64 (*.f64 b b) (*.f64 a b)))) (/.f64 (pow.f64 b #s(literal 3 binary64)) (fma.f64 a a (-.f64 (*.f64 b b) (*.f64 a b)))))
(+.f64 a b)
(+.f64 b a)
a
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx r r)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (tan.f64 b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 a (*.f64 r (pow.f64 (tan.f64 b) #s(literal 2 binary64))) (*.f64 r (tan.f64 b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 (fma.f64 (neg.f64 a) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (*.f64 #s(literal 1 binary64) (*.f64 r (pow.f64 (tan.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) (*.f64 r (pow.f64 (tan.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64)))))) a (*.f64 #s(literal 1 binary64) (*.f64 r (pow.f64 (tan.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b))
#s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (pow.f64 (tan.f64 b) #s(literal 2 binary64)) (tan.f64 b)))
#s(approx (/ (sin b) (cos (+ a b))) (fma.f64 (fma.f64 (neg.f64 a) (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) (*.f64 #s(literal 1 binary64) (pow.f64 (tan.f64 b) #s(literal 2 binary64)))) a (tan.f64 b)))
#s(approx (/ (sin b) (cos (+ a b))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (pow.f64 (tan.f64 b) #s(literal 2 binary64)) #s(literal -1/2 binary64) (fma.f64 (pow.f64 (tan.f64 b) #s(literal 2 binary64)) #s(literal 1/6 binary64) (/.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) a (*.f64 #s(literal 1 binary64) (pow.f64 (tan.f64 b) #s(literal 2 binary64)))) a (tan.f64 b)))
#s(approx (cos (+ a b)) (cos.f64 b))
#s(approx (cos (+ a b)) (fma.f64 (neg.f64 a) (sin.f64 b) (cos.f64 b)))
#s(approx (cos (+ a b)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) a (cos.f64 b)))
#s(approx (cos (+ a b)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 b) a) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) a) (sin.f64 b)) a (cos.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) a)
#s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (neg.f64 a)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 b (neg.f64 a)))))
#s(approx (cos (+ a b)) (cos.f64 (-.f64 b (neg.f64 a))))
#s(approx (+ a b) (*.f64 (neg.f64 a) (-.f64 (/.f64 (neg.f64 b) a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) b) (neg.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) b) (neg.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (cos (+ a b))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a))))) b (*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (sin b) b)
#s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
#s(approx (sin b) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 b b)) #s(literal 1/6 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx (sin b) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 b b) #s(literal 1/120 binary64)) (*.f64 b b)) #s(literal 1/6 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx b b)
#s(approx (cos (+ a b)) (cos.f64 a))
#s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
#s(approx (cos (+ a b)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a)))
#s(approx (cos (+ a b)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 a) b) #s(literal 1/6 binary64) (*.f64 (cos.f64 a) #s(literal -1/2 binary64))) b) (sin.f64 a)) b (cos.f64 a)))
#s(approx (sin b) (sin.f64 b))
#s(approx (+ a b) (*.f64 (+.f64 (/.f64 a b) #s(literal 1 binary64)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (neg.f64 b)))))
#s(approx (/ (sin b) (cos (+ a b))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 a (neg.f64 b)))))
#s(approx (cos (+ a b)) (cos.f64 (-.f64 a (neg.f64 b))))
#s(approx (+ a b) (*.f64 (neg.f64 b) (-.f64 (/.f64 (neg.f64 a) b) #s(literal 1 binary64))))

eval12.0ms (0.2%)

Memory
-19.3MiB live, 26.6MiB allocated; 3ms collecting garbage
Compiler

Compiled 1 758 to 422 computations (76% saved)

prune17.0ms (0.3%)

Memory
-11.1MiB live, 35.4MiB allocated; 3ms collecting garbage
Pruning

19 alts after pruning (19 fresh and 0 done)

PrunedKeptTotal
New651984
Fresh000
Picked101
Done000
Total661985
Accuracy
99.7%
Counts
85 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.2%
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
99.3%
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)) (fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
41.0%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
41.2%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))))
62.3%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))))
60.5%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
56.0%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
52.4%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a)))))
53.5%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
51.7%
(*.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))))
51.8%
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
57.9%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (pow.f64 (tan.f64 b) #s(literal 2 binary64)) (tan.f64 b))))
52.0%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 b (cos.f64 a))))
51.5%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b)))
60.4%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
51.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (/.f64 r (cos.f64 a))) b))
51.6%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b))
52.1%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
Compiler

Compiled 856 to 536 computations (37.4% saved)

series124.0ms (2.2%)

Memory
19.8MiB live, 125.6MiB allocated; 93ms collecting garbage
Counts
37 → 175
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
r
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
(sin.f64 b)
b
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
(*.f64 (cos.f64 b) (cos.f64 a))
(cos.f64 b)
(cos.f64 a)
a
(*.f64 (sin.f64 b) (sin.f64 a))
(sin.f64 a)
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
#s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b))
(tan.f64 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 #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 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)
(fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 b b)
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(cos.f64 (+.f64 a b))
(+.f64 a b)
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(/.f64 (sin.f64 b) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a))))
#s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
(fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a))
(neg.f64 b)
Outputs
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (- (* (cos a) (cos b)) (* (sin a) (sin b))))))
#s(approx r #s(hole binary64 r))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (+ a b)))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (+ a (+ b (* 1/2 (PI))))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (cos b)))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* a (- (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))) (sin b))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (cos b)))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* -1/2 (* (pow a 2) (cos b))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* 1/24 (* (pow a 2) (cos b))))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* (pow a 2) (+ (* -1/720 (* (pow a 2) (cos b))) (* 1/24 (cos b)))))))))
#s(approx (cos a) #s(hole binary64 1))
#s(approx (cos a) #s(hole binary64 (+ 1 (* -1/2 (pow a 2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* 1/24 (pow a 2)) 1/2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/24 (* -1/720 (pow a 2)))) 1/2)))))
#s(approx a #s(hole binary64 a))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (sin b))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* -1/6 (* (pow a 2) (sin b)))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* (pow a 2) (+ (* -1/6 (sin b)) (* 1/120 (* (pow a 2) (sin b)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* (pow a 2) (+ (* -1/6 (sin b)) (* (pow a 2) (+ (* -1/5040 (* (pow a 2) (sin b))) (* 1/120 (sin b))))))))))
#s(approx (sin a) #s(hole binary64 a))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* -1/6 (pow a 2))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* 1/120 (pow a 2)) 1/6))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/120 (* -1/5040 (pow a 2)))) 1/6))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos b)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))) (sin b))))))
#s(approx (+ a b) #s(hole binary64 b))
#s(approx (+ a b) #s(hole binary64 (+ a b)))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* -1 (/ (* a (* r (* (cos (+ b (* 1/2 (PI)))) (sin b)))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (+ b (* 1/2 (PI)))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))) (sin (+ b (* 1/2 (PI)))))) (+ (* -1/6 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (* 1/2 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))))))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (+ b (* 1/2 (PI)))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* -1 (/ (* a (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI))))))))) (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (+ b (* 1/2 (PI)))) (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI)))))))) (sin (+ b (* 1/2 (PI)))))) (+ (* -1/6 (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2))) (* 1/2 (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2))))))) (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI))))))))) (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (sin (+ b (* 1/2 (PI))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (cos (+ b (* 1/2 (PI))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (+ (cos (+ b (* 1/2 (PI)))) (* -1/2 (* a (sin (+ b (* 1/2 (PI)))))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (+ (cos (+ b (* 1/2 (PI)))) (* a (+ (* -1/2 (sin (+ b (* 1/2 (PI))))) (* -1/6 (* a (cos (+ b (* 1/2 (PI)))))))))))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (+ b (* 1/2 (PI)))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (+ a (+ b (* 1/2 (PI))))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 1))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (+ 1 (* -1 (* a b)))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (+ 1 (* a (+ (* -1 b) (* -1/2 a))))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (+ 1 (* a (+ (* -1 b) (* a (- (* 1/6 (* a b)) 1/2)))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ (sin b) (- (* (cos a) (cos b)) (* (sin a) (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (- (* (cos a) (cos b)) (* (sin a) (sin b)))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (* (cos a) (cos b))))
#s(approx (cos a) #s(hole binary64 (cos a)))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* (sin a) (sin b))))
#s(approx (sin a) #s(hole binary64 (sin a)))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (+ a b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (+ a b))))
#s(approx (+ a b) #s(hole binary64 a))
#s(approx (+ a b) #s(hole binary64 (* a (+ 1 (/ b a)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (+ a (+ b (* 1/2 (PI))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (sin (+ a (+ b (* 1/2 (PI)))))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 a))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (* a (+ 1 (+ (* 1/2 (/ (PI) a)) (/ b a))))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- b (* -1 a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- b (* -1 a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- b (* -1 a)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* a (- (* -1 (/ b a)) 1)))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ b (* 1/2 (PI))) (* -1 a))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (- (+ b (* 1/2 (PI))) (* -1 a))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (sin (- (+ b (* 1/2 (PI))) (* -1 a)))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (* -1 (* a (- (* -1 (/ (+ b (* 1/2 (PI))) a)) 1)))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (sin b) #s(hole binary64 b))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* 1/120 (pow b 2)) 1/6))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/120 (* -1/5040 (pow b 2)))) 1/6))))))
#s(approx b #s(hole binary64 b))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (cos a)))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* b (- (* -1/2 (* b (cos a))) (sin a))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* b (- (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))) (sin a))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (cos a)))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* -1/2 (* (pow b 2) (cos a))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* 1/24 (* (pow b 2) (cos a))))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* (pow b 2) (+ (* -1/720 (* (pow b 2) (cos a))) (* 1/24 (cos a)))))))))
#s(approx (cos b) #s(hole binary64 1))
#s(approx (cos b) #s(hole binary64 (+ 1 (* -1/2 (pow b 2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* 1/24 (pow b 2)) 1/2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/24 (* -1/720 (pow b 2)))) 1/2)))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (sin a))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* -1/6 (* (pow b 2) (sin a)))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* (pow b 2) (+ (* -1/6 (sin a)) (* 1/120 (* (pow b 2) (sin a)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* (pow b 2) (+ (* -1/6 (sin a)) (* (pow b 2) (+ (* -1/5040 (* (pow b 2) (sin a))) (* 1/120 (sin a))))))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (tan b) #s(hole binary64 b))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* 1/3 (pow b 2))))))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (+ 1/3 (* 2/15 (pow b 2))))))))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (+ 1/3 (* (pow b 2) (+ 2/15 (* 17/315 (pow b 2))))))))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 b))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 1))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (+ 1 (* -1/6 (pow b 2)))))
#s(approx (* b b) #s(hole binary64 (pow b 2)))
#s(approx (cos (+ a b)) #s(hole binary64 (cos a)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* -1/2 (* b (cos a))) (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))) (sin a))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* b r) (sin (+ a (* 1/2 (PI)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* -1 (/ (* b (* r (cos (+ a (* 1/2 (PI)))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1/6 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (+ (* 1/2 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ (* (cos (+ a (* 1/2 (PI)))) (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (sin (+ a (* 1/2 (PI))))))))) (* -1/6 (/ r (sin (+ a (* 1/2 (PI))))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ b (sin (+ a (* 1/2 (PI)))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* -1 (/ (* b (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1/6 (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (+ (* 1/2 (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ (* (cos (+ a (* 1/2 (PI)))) (- (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (sin (+ a (* 1/2 (PI))))))))) (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI))))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (sin (+ a (* 1/2 (PI))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (cos (+ a (* 1/2 (PI))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (+ (cos (+ a (* 1/2 (PI)))) (* -1/2 (* b (sin (+ a (* 1/2 (PI)))))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (+ (cos (+ a (* 1/2 (PI)))) (* b (+ (* -1/2 (sin (+ a (* 1/2 (PI))))) (* -1/6 (* b (cos (+ a (* 1/2 (PI)))))))))))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (+ a (* 1/2 (PI)))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (cos a)))
#s(approx (neg b) #s(hole binary64 (* -1 b)))
#s(approx (sin b) #s(hole binary64 (sin b)))
#s(approx (cos b) #s(hole binary64 (cos b)))
#s(approx (tan b) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* -1/6 (pow b 3))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* (pow b 3) (- (/ 1 (pow b 2)) 1/6))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (* -1/6 (pow b 2))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (* (pow b 2) (- (/ 1 (pow b 2)) 1/6))))
#s(approx (+ a b) #s(hole binary64 (* b (+ 1 (/ a b)))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 b))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (* b (+ 1 (+ (* 1/2 (/ (PI) b)) (/ a b))))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (* -1 (* b (sin a)))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (* b (+ (* -1 (sin a)) (/ (cos a) b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- a (* -1 b))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- a (* -1 b))))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* -1 (* (pow b 3) (- 1/6 (/ 1 (pow b 2)))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- a (* -1 b)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* b (- (* -1 (/ a b)) 1)))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ a (* 1/2 (PI))) (* -1 b))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (- (+ a (* 1/2 (PI))) (* -1 b))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (sin (- (+ a (* 1/2 (PI))) (* -1 b)))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (* -1 (* b (- (* -1 (/ (+ a (* 1/2 (PI))) b)) 1)))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (* -1 (* b (+ (sin a) (* -1 (/ (cos a) b)))))))
Calls

9 calls:

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

rewrite214.0ms (3.7%)

Memory
18.0MiB live, 242.9MiB allocated; 50ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08185640
08604864
147484864
080664566
Stop Event
iter-limit
node-limit
iter-limit
Counts
212 → 373
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
r
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
(sin.f64 b)
b
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
(*.f64 (cos.f64 b) (cos.f64 a))
(cos.f64 b)
(cos.f64 a)
a
(*.f64 (sin.f64 b) (sin.f64 a))
(sin.f64 a)
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
#s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b))
(tan.f64 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 #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 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)
(fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 b b)
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(cos.f64 (+.f64 a b))
(+.f64 a b)
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(/.f64 (sin.f64 b) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
(/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a))))
#s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
(fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a))
(neg.f64 b)
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (- (* (cos a) (cos b)) (* (sin a) (sin b))))))
#s(approx r #s(hole binary64 r))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (+ a b)))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (+ a (+ b (* 1/2 (PI))))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (cos b)))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* a (- (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))) (sin b))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (cos b)))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* -1/2 (* (pow a 2) (cos b))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* 1/24 (* (pow a 2) (cos b))))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* (pow a 2) (+ (* -1/720 (* (pow a 2) (cos b))) (* 1/24 (cos b)))))))))
#s(approx (cos a) #s(hole binary64 1))
#s(approx (cos a) #s(hole binary64 (+ 1 (* -1/2 (pow a 2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* 1/24 (pow a 2)) 1/2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/24 (* -1/720 (pow a 2)))) 1/2)))))
#s(approx a #s(hole binary64 a))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (sin b))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* -1/6 (* (pow a 2) (sin b)))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* (pow a 2) (+ (* -1/6 (sin b)) (* 1/120 (* (pow a 2) (sin b)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* (pow a 2) (+ (* -1/6 (sin b)) (* (pow a 2) (+ (* -1/5040 (* (pow a 2) (sin b))) (* 1/120 (sin b))))))))))
#s(approx (sin a) #s(hole binary64 a))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* -1/6 (pow a 2))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* 1/120 (pow a 2)) 1/6))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/120 (* -1/5040 (pow a 2)))) 1/6))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos b)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))) (sin b))))))
#s(approx (+ a b) #s(hole binary64 b))
#s(approx (+ a b) #s(hole binary64 (+ a b)))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* -1 (/ (* a (* r (* (cos (+ b (* 1/2 (PI)))) (sin b)))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (+ b (* 1/2 (PI)))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))) (sin (+ b (* 1/2 (PI)))))) (+ (* -1/6 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (* 1/2 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))))))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (+ b (* 1/2 (PI)))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* -1 (/ (* a (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI))))))))) (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (+ b (* 1/2 (PI)))) (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI)))))))) (sin (+ b (* 1/2 (PI)))))) (+ (* -1/6 (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2))) (* 1/2 (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2))))))) (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI))))))))) (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (sin (+ b (* 1/2 (PI))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (cos (+ b (* 1/2 (PI))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (+ (cos (+ b (* 1/2 (PI)))) (* -1/2 (* a (sin (+ b (* 1/2 (PI)))))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (+ (cos (+ b (* 1/2 (PI)))) (* a (+ (* -1/2 (sin (+ b (* 1/2 (PI))))) (* -1/6 (* a (cos (+ b (* 1/2 (PI)))))))))))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (+ b (* 1/2 (PI)))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (+ a (+ b (* 1/2 (PI))))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 1))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (+ 1 (* -1 (* a b)))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (+ 1 (* a (+ (* -1 b) (* -1/2 a))))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (+ 1 (* a (+ (* -1 b) (* a (- (* 1/6 (* a b)) 1/2)))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ (sin b) (- (* (cos a) (cos b)) (* (sin a) (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (- (* (cos a) (cos b)) (* (sin a) (sin b)))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (* (cos a) (cos b))))
#s(approx (cos a) #s(hole binary64 (cos a)))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* (sin a) (sin b))))
#s(approx (sin a) #s(hole binary64 (sin a)))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (+ a b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (+ a b))))
#s(approx (+ a b) #s(hole binary64 a))
#s(approx (+ a b) #s(hole binary64 (* a (+ 1 (/ b a)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (+ a (+ b (* 1/2 (PI))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (sin (+ a (+ b (* 1/2 (PI)))))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 a))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (* a (+ 1 (+ (* 1/2 (/ (PI) a)) (/ b a))))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- b (* -1 a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- b (* -1 a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- b (* -1 a)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* a (- (* -1 (/ b a)) 1)))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ b (* 1/2 (PI))) (* -1 a))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (- (+ b (* 1/2 (PI))) (* -1 a))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (sin (- (+ b (* 1/2 (PI))) (* -1 a)))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (* -1 (* a (- (* -1 (/ (+ b (* 1/2 (PI))) a)) 1)))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (sin b) #s(hole binary64 b))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* 1/120 (pow b 2)) 1/6))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/120 (* -1/5040 (pow b 2)))) 1/6))))))
#s(approx b #s(hole binary64 b))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (cos a)))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* b (- (* -1/2 (* b (cos a))) (sin a))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* b (- (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))) (sin a))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (cos a)))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* -1/2 (* (pow b 2) (cos a))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* 1/24 (* (pow b 2) (cos a))))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* (pow b 2) (+ (* -1/720 (* (pow b 2) (cos a))) (* 1/24 (cos a)))))))))
#s(approx (cos b) #s(hole binary64 1))
#s(approx (cos b) #s(hole binary64 (+ 1 (* -1/2 (pow b 2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* 1/24 (pow b 2)) 1/2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/24 (* -1/720 (pow b 2)))) 1/2)))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (sin a))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* -1/6 (* (pow b 2) (sin a)))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* (pow b 2) (+ (* -1/6 (sin a)) (* 1/120 (* (pow b 2) (sin a)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* (pow b 2) (+ (* -1/6 (sin a)) (* (pow b 2) (+ (* -1/5040 (* (pow b 2) (sin a))) (* 1/120 (sin a))))))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (tan b) #s(hole binary64 b))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* 1/3 (pow b 2))))))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (+ 1/3 (* 2/15 (pow b 2))))))))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (+ 1/3 (* (pow b 2) (+ 2/15 (* 17/315 (pow b 2))))))))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 b))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 1))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (+ 1 (* -1/6 (pow b 2)))))
#s(approx (* b b) #s(hole binary64 (pow b 2)))
#s(approx (cos (+ a b)) #s(hole binary64 (cos a)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* -1/2 (* b (cos a))) (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))) (sin a))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* b r) (sin (+ a (* 1/2 (PI)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* -1 (/ (* b (* r (cos (+ a (* 1/2 (PI)))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1/6 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (+ (* 1/2 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ (* (cos (+ a (* 1/2 (PI)))) (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (sin (+ a (* 1/2 (PI))))))))) (* -1/6 (/ r (sin (+ a (* 1/2 (PI))))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ b (sin (+ a (* 1/2 (PI)))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* -1 (/ (* b (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1/6 (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (+ (* 1/2 (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ (* (cos (+ a (* 1/2 (PI)))) (- (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (sin (+ a (* 1/2 (PI))))))))) (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI))))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (sin (+ a (* 1/2 (PI))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (cos (+ a (* 1/2 (PI))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (+ (cos (+ a (* 1/2 (PI)))) (* -1/2 (* b (sin (+ a (* 1/2 (PI)))))))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (+ (cos (+ a (* 1/2 (PI)))) (* b (+ (* -1/2 (sin (+ a (* 1/2 (PI))))) (* -1/6 (* b (cos (+ a (* 1/2 (PI)))))))))))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (+ a (* 1/2 (PI)))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (cos a)))
#s(approx (neg b) #s(hole binary64 (* -1 b)))
#s(approx (sin b) #s(hole binary64 (sin b)))
#s(approx (cos b) #s(hole binary64 (cos b)))
#s(approx (tan b) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* -1/6 (pow b 3))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* (pow b 3) (- (/ 1 (pow b 2)) 1/6))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (* -1/6 (pow b 2))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (* (pow b 2) (- (/ 1 (pow b 2)) 1/6))))
#s(approx (+ a b) #s(hole binary64 (* b (+ 1 (/ a b)))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 b))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (* b (+ 1 (+ (* 1/2 (/ (PI) b)) (/ a b))))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (* -1 (* b (sin a)))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (* b (+ (* -1 (sin a)) (/ (cos a) b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- a (* -1 b))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- a (* -1 b))))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* -1 (* (pow b 3) (- 1/6 (/ 1 (pow b 2)))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- a (* -1 b)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* b (- (* -1 (/ a b)) 1)))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ a (* 1/2 (PI))) (* -1 b))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (- (+ a (* 1/2 (PI))) (* -1 b))))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) #s(hole binary64 (sin (- (+ a (* 1/2 (PI))) (* -1 b)))))
#s(approx (+ (+ a b) (/ (PI) 2)) #s(hole binary64 (* -1 (* b (- (* -1 (/ (+ a (* 1/2 (PI))) b)) 1)))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(hole binary64 (* -1 (* b (+ (sin a) (* -1 (/ (cos a) b)))))))
Outputs
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) (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 (neg.f64 (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(pow.f64 (sin.f64 b) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64)))
(sin.f64 b)
(exp.f64 (*.f64 (log.f64 (sin.f64 b)) #s(literal 1 binary64)))
b
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 2 binary64))) (cos.f64 (-.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.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 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(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 b)) (sin.f64 a)))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b))))
(sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 a b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (neg.f64 (neg.f64 (+.f64 a b))))
(cos.f64 (neg.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b))))
(+.f64 (*.f64 (sin.f64 a) (neg.f64 (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 b) (cos.f64 a))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 b))) (sin.f64 (+.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) b)) (sin.f64 (+.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 a))) (sin.f64 (+.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) a)) (sin.f64 (+.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) a))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) a (neg.f64 b))) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) a b)) (cos.f64 (-.f64 (neg.f64 a) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (neg.f64 b))) (cos.f64 (-.f64 a (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) b (neg.f64 a))) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) b a)) (cos.f64 (-.f64 (neg.f64 b) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (neg.f64 a))) (cos.f64 (-.f64 b (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 a b))) #s(literal 2 binary64))
(pow.f64 (cos.f64 b) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 b) #s(literal -1 binary64)))
(fma.f64 (sin.f64 b) #s(literal 0 binary64) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(sin.f64 (fma.f64 #s(literal -1 binary64) b (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 b)))
(cos.f64 (neg.f64 b))
(cos.f64 b)
(exp.f64 (*.f64 (log.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)))
(pow.f64 (cos.f64 a) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.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)))
(sin.f64 (fma.f64 #s(literal -1 binary64) a (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 a)))
(cos.f64 (neg.f64 a))
(cos.f64 a)
(exp.f64 (*.f64 (log.f64 (cos.f64 a)) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 a) #s(literal 0 binary64)) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
a
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(/.f64 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(pow.f64 (sin.f64 a) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 a) #s(literal -1 binary64)))
(sin.f64 a)
(exp.f64 (*.f64 (log.f64 (sin.f64 a)) #s(literal 1 binary64)))
(*.f64 #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (tan.f64 b)) r)
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (tan.f64 b)))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (tan.f64 b))
(/.f64 (+.f64 (tan.f64 b) (tan.f64 (PI.f64))) (-.f64 #s(literal 1 binary64) (*.f64 (tan.f64 b) (tan.f64 (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 (cos.f64 b)))
(/.f64 (sin.f64 b) (cos.f64 b))
(tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))
(tan.f64 (+.f64 b (PI.f64)))
(tan.f64 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 #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 #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)))
#s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
(*.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 #s(literal 1 binary64) b (*.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) b))
(fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))
(+.f64 (*.f64 b #s(literal 1 binary64)) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))
(+.f64 (*.f64 #s(literal 1 binary64) b) (*.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) b))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 b b) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) #s(literal -1/6 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 b (*.f64 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) (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))
(*.f64 (exp.f64 (log.f64 b)) (exp.f64 (log.f64 b)))
(*.f64 (fabs.f64 b) (fabs.f64 b))
(*.f64 (neg.f64 b) (neg.f64 b))
(*.f64 b b)
(pow.f64 (exp.f64 (log.f64 b)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 b) #s(literal 2 binary64))
(pow.f64 (*.f64 b b) #s(literal 1 binary64))
(pow.f64 (neg.f64 b) #s(literal 2 binary64))
(pow.f64 b #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 b) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 b) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 b) #s(literal 2 binary64))))
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 2 binary64))) (cos.f64 (-.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.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 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(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 b)) (sin.f64 a)))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b))))
(sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 a b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (neg.f64 (neg.f64 (+.f64 a b))))
(cos.f64 (neg.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b))))
(+.f64 (*.f64 (sin.f64 a) (neg.f64 (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 a b))
(/.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64))) (fma.f64 a a (-.f64 (*.f64 b b) (*.f64 a b))))
(+.f64 a b)
(+.f64 b a)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) (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 (neg.f64 (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 2 binary64))) (cos.f64 (-.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.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 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(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 b)) (sin.f64 a)))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b))))
(sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 a b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (neg.f64 (neg.f64 (+.f64 a b))))
(cos.f64 (neg.f64 (+.f64 a b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 a b))) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b))))
(+.f64 (*.f64 (sin.f64 a) (neg.f64 (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
(/.f64 (-.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64)) (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (+.f64 a b) #s(literal 3 binary64)) (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64)) (-.f64 (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 a b))
(+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64)))
(+.f64 a (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))
(/.f64 (neg.f64 (PI.f64)) #s(literal -2 binary64))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 b) #s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))) r)
(*.f64 r (/.f64 (sin.f64 b) #s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) #s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a))))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 #s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
(/.f64 (sin.f64 b) #s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
(/.f64 (-.f64 (pow.f64 (cos.f64 a) #s(literal 2 binary64)) (pow.f64 (*.f64 (neg.f64 b) (sin.f64 a)) #s(literal 2 binary64))) (-.f64 (cos.f64 a) (*.f64 (neg.f64 b) (sin.f64 a))))
(/.f64 (-.f64 (pow.f64 (*.f64 (neg.f64 b) (sin.f64 a)) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (-.f64 (*.f64 (neg.f64 b) (sin.f64 a)) (cos.f64 a)))
(/.f64 (+.f64 (pow.f64 (cos.f64 a) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 b) (sin.f64 a)) #s(literal 3 binary64))) (fma.f64 (cos.f64 a) (cos.f64 a) (-.f64 (pow.f64 (*.f64 (neg.f64 b) (sin.f64 a)) #s(literal 2 binary64)) (*.f64 (cos.f64 a) (*.f64 (neg.f64 b) (sin.f64 a))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (sin.f64 a) b) #s(literal 3 binary64)) #s(literal -1 binary64) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (neg.f64 b) (sin.f64 a)) #s(literal 2 binary64)) (-.f64 (pow.f64 (cos.f64 a) #s(literal 2 binary64)) (*.f64 (*.f64 (neg.f64 b) (sin.f64 a)) (cos.f64 a)))))
(fma.f64 (*.f64 (sin.f64 a) b) #s(literal -1 binary64) (cos.f64 a))
(fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) b) (cos.f64 a))
(fma.f64 (sin.f64 a) (neg.f64 b) (cos.f64 a))
(-.f64 (cos.f64 a) (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 (neg.f64 b) (sin.f64 a)) (cos.f64 a))
(+.f64 (cos.f64 a) (*.f64 (neg.f64 b) (sin.f64 a)))
(*.f64 #s(literal -1 binary64) b)
(*.f64 b #s(literal -1 binary64))
(neg.f64 b)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx r r)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (tan.f64 b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 r (tan.f64 b) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) a) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 (fma.f64 (neg.f64 a) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64)))))) a (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (tan.f64 b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (fma.f64 a (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (tan.f64 b)))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (fma.f64 (*.f64 #s(literal -1 binary64) (-.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) a) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal 1/6 binary64) (/.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) a (*.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (cos.f64 b))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (neg.f64 a) (sin.f64 b) (cos.f64 b)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) a (cos.f64 b)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 b) a) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) a) (sin.f64 b)) a (cos.f64 b)))
#s(approx (* (cos b) (cos a)) (cos.f64 b))
#s(approx (* (cos b) (cos a)) (fma.f64 (*.f64 (*.f64 a a) #s(literal -1/2 binary64)) (cos.f64 b) (cos.f64 b)))
#s(approx (* (cos b) (cos a)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 a a)) (cos.f64 b) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) (*.f64 a a) (cos.f64 b)))
#s(approx (* (cos b) (cos a)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 a a)) (cos.f64 b) (*.f64 #s(literal 1/24 binary64) (cos.f64 b))) (*.f64 a a) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) (*.f64 a a) (cos.f64 b)))
#s(approx (cos a) #s(literal 1 binary64))
#s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos a) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 a a)) #s(literal 1/2 binary64)) (*.f64 a a) #s(literal 1 binary64)))
#s(approx (cos a) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 a a) #s(literal 1/24 binary64)) (*.f64 a a)) #s(literal 1/2 binary64)) (*.f64 a a) #s(literal 1 binary64)))
#s(approx a a)
#s(approx (* (sin b) (sin a)) (*.f64 (sin.f64 b) a))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (*.f64 (*.f64 a a) #s(literal -1/6 binary64)) (sin.f64 b) (sin.f64 b)) a))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 a a)) (sin.f64 b) (*.f64 #s(literal -1/6 binary64) (sin.f64 b))) (*.f64 a a) (sin.f64 b)) a))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 a a)) (sin.f64 b) (*.f64 #s(literal 1/120 binary64) (sin.f64 b))) (*.f64 a a) (*.f64 #s(literal -1/6 binary64) (sin.f64 b))) (*.f64 a a) (sin.f64 b)) a))
#s(approx (sin a) a)
#s(approx (sin a) (*.f64 (fma.f64 (*.f64 a a) #s(literal -1/6 binary64) #s(literal 1 binary64)) a))
#s(approx (sin a) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 a a)) #s(literal 1/6 binary64)) (*.f64 a a) #s(literal 1 binary64)) a))
#s(approx (sin a) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 a a) #s(literal 1/120 binary64)) (*.f64 a a)) #s(literal 1/6 binary64)) (*.f64 a a) #s(literal 1 binary64)) a))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 r (tan.f64 b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 r (tan.f64 b) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) a) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 (fma.f64 (neg.f64 a) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64)))))) a (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (tan.f64 b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (fma.f64 a (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (tan.f64 b)))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (fma.f64 (*.f64 #s(literal -1 binary64) (-.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) a) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal 1/6 binary64) (/.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) a (*.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (cos.f64 b))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (neg.f64 a) (sin.f64 b) (cos.f64 b)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) a (cos.f64 b)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 b) a) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) a) (sin.f64 b)) a (cos.f64 b)))
#s(approx (+ a b) b)
#s(approx (+ a b) (+.f64 a b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) (neg.f64 (/.f64 (*.f64 (*.f64 a r) (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b))) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (*.f64 r (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64))))))) (*.f64 r (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))))) a (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (*.f64 r (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)))) #s(literal 1/3 binary64) (neg.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (/.f64 (fma.f64 (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (*.f64 r (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))))) (fma.f64 (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (*.f64 r (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64))))))) a) (*.f64 r (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))))) a (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (fma.f64 (*.f64 a (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)))) #s(literal -1 binary64) (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64)))))) (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)))) a (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))) #s(literal 1/3 binary64) (neg.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (/.f64 (fma.f64 (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))))) (fma.f64 (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64)))))) a) (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)))) a (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) a (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) a) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) a (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) a) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (*.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal -1/2 binary64))) a (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) a (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (+ (+ a b) (/ (PI) 2)) (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))
#s(approx (+ (+ a b) (/ (PI) 2)) (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))
#s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64))
#s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64)))
#s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (fma.f64 #s(literal -1/2 binary64) a (neg.f64 b)) a #s(literal 1 binary64)))
#s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 a b) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) a (neg.f64 b)) a #s(literal 1 binary64)))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (cos.f64 (+.f64 a b)))
#s(approx (* (cos b) (cos a)) (*.f64 (cos.f64 a) (cos.f64 b)))
#s(approx (cos a) (cos.f64 a))
#s(approx (* (sin b) (sin a)) (*.f64 (sin.f64 a) (sin.f64 b)))
#s(approx (sin a) (sin.f64 a))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (cos.f64 (+.f64 a b)))
#s(approx (+ a b) a)
#s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 (sin.f64 b) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a)))
#s(approx (+ (+ a b) (/ (PI) 2)) a)
#s(approx (+ (+ a b) (/ (PI) 2)) (*.f64 (+.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a) #s(literal 1 binary64)) a))
#s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (neg.f64 a)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 b (neg.f64 a)))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (cos.f64 (-.f64 b (neg.f64 a))))
#s(approx (+ a b) (*.f64 (neg.f64 a) (-.f64 (/.f64 (neg.f64 b) a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) (neg.f64 a)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 (sin.f64 b) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) (neg.f64 a)))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) (neg.f64 a))))
#s(approx (+ (+ a b) (/ (PI) 2)) (*.f64 (neg.f64 a) (-.f64 (neg.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a)) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) b) (neg.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) b) (/.f64 (neg.f64 (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a))))) b (*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (sin b) b)
#s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
#s(approx (sin b) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 b b) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx (sin b) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 b b)) #s(literal 1/6 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx b b)
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (cos.f64 a))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 a) b) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b) (sin.f64 a)) b (cos.f64 a)))
#s(approx (* (cos b) (cos a)) (cos.f64 a))
#s(approx (* (cos b) (cos a)) (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/2 binary64)) (cos.f64 a) (cos.f64 a)))
#s(approx (* (cos b) (cos a)) (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal 1/24 binary64)) (cos.f64 a) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) (*.f64 b b) (cos.f64 a)))
#s(approx (* (cos b) (cos a)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/720 binary64)) (cos.f64 a) (*.f64 #s(literal 1/24 binary64) (cos.f64 a))) (*.f64 b b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) (*.f64 b b) (cos.f64 a)))
#s(approx (cos b) #s(literal 1 binary64))
#s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos b) (fma.f64 (-.f64 (*.f64 (*.f64 b b) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 b b) #s(literal 1 binary64)))
#s(approx (cos b) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 b b)) #s(literal 1/2 binary64)) (*.f64 b b) #s(literal 1 binary64)))
#s(approx (* (sin b) (sin a)) (*.f64 (sin.f64 a) b))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) (sin.f64 a)) #s(literal -1/6 binary64) (sin.f64 a)) b))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) (sin.f64 a)) #s(literal 1/120 binary64) (*.f64 (sin.f64 a) #s(literal -1/6 binary64))) (*.f64 b b) (sin.f64 a)) b))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) (sin.f64 a)) #s(literal -1/5040 binary64) (*.f64 #s(literal 1/120 binary64) (sin.f64 a))) (*.f64 b b) (*.f64 (sin.f64 a) #s(literal -1/6 binary64))) (*.f64 b b) (sin.f64 a)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) b) (neg.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) b) (/.f64 (neg.f64 (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a))))) b (*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (tan b) b)
#s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx (tan b) (*.f64 (fma.f64 (fma.f64 #s(literal 2/15 binary64) (*.f64 b b) #s(literal 1/3 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx (tan b) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 17/315 binary64) (*.f64 b b) #s(literal 2/15 binary64)) (*.f64 b b) #s(literal 1/3 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx (* (+ (* (* b b) -1/6) 1) b) b)
#s(approx (* (+ (* (* b b) -1/6) 1) b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
#s(approx (+ (* (* b b) -1/6) 1) #s(literal 1 binary64))
#s(approx (+ (* (* b b) -1/6) 1) (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)))
#s(approx (* b b) (*.f64 b b))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (cos.f64 a))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 a) b) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b) (sin.f64 a)) b (cos.f64 a)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 b r) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))) #s(literal -1 binary64) (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 (*.f64 #s(literal -1/6 binary64) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) r) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64)))))) b) (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))))) b (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (neg.f64 b) (fma.f64 (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) #s(literal -1/6 binary64) (fma.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (/.f64 (-.f64 (/.f64 (*.f64 #s(literal -1/6 binary64) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) r) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (*.f64 (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))) (-.f64 (/.f64 (*.f64 #s(literal -1/6 binary64) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) r) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64))))))) b) (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))))) b (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))) b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 (*.f64 b (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) #s(literal -1 binary64) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))) b) (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) b (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))) #s(literal -1/6 binary64) (fma.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (*.f64 (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))) (-.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))) b) (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) b (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal -1 binary64))) b))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) b) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (*.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal -1/2 binary64))) b (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (+ (+ a b) (/ (PI) 2)) (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))
#s(approx (+ (* (neg b) (sin a)) (cos a)) (cos.f64 a))
#s(approx (neg b) (neg.f64 b))
#s(approx (sin b) (sin.f64 b))
#s(approx (cos b) (cos.f64 b))
#s(approx (tan b) (tan.f64 b))
#s(approx (* (+ (* (* b b) -1/6) 1) b) (*.f64 (pow.f64 b #s(literal 3 binary64)) #s(literal -1/6 binary64)))
#s(approx (* (+ (* (* b b) -1/6) 1) b) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (pow.f64 b #s(literal 3 binary64))))
#s(approx (+ (* (* b b) -1/6) 1) (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))
#s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b)))
#s(approx (+ a b) (*.f64 (+.f64 (/.f64 a b) #s(literal 1 binary64)) b))
#s(approx (+ (+ a b) (/ (PI) 2)) b)
#s(approx (+ (+ a b) (/ (PI) 2)) (*.f64 (+.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) b) #s(literal 1 binary64)) b))
#s(approx (+ (* (neg b) (sin a)) (cos a)) (*.f64 (neg.f64 b) (sin.f64 a)))
#s(approx (+ (* (neg b) (sin a)) (cos a)) (*.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 a) (/.f64 (cos.f64 a) b)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (neg.f64 b)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 a (neg.f64 b)))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) (*.f64 (pow.f64 (neg.f64 b) #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (pow.f64 b #s(literal -2 binary64)))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (cos.f64 (-.f64 a (neg.f64 b))))
#s(approx (+ a b) (*.f64 (neg.f64 b) (-.f64 (/.f64 (neg.f64 a) b) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 (sin.f64 b) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
#s(approx (sin (+ (+ a b) (/ (PI) 2))) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b))))
#s(approx (+ (+ a b) (/ (PI) 2)) (*.f64 (neg.f64 b) (-.f64 (neg.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) b)) #s(literal 1 binary64))))
#s(approx (+ (* (neg b) (sin a)) (cos a)) (*.f64 (neg.f64 b) (fma.f64 (/.f64 (cos.f64 a) b) #s(literal -1 binary64) (sin.f64 a))))

eval168.0ms (2.9%)

Memory
-14.5MiB live, 86.1MiB allocated; 23ms collecting garbage
Compiler

Compiled 9 721 to 1 845 computations (81% saved)

prune49.0ms (0.9%)

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

47 alts after pruning (45 fresh and 2 done)

PrunedKeptTotal
New36036396
Fresh5914
Picked325
Done000
Total36847415
Accuracy
99.8%
Counts
415 → 47
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.2%
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
51.7%
(/.f64 (*.f64 r #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)))
99.4%
(*.f64 r (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
40.9%
(*.f64 r (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
99.3%
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)) (fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 a) #s(literal -1 binary64)))) (*.f64 (sin.f64 b) (sin.f64 a)))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (sin.f64 a)))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 a) #s(literal -1 binary64)))))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
63.4%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 #s(approx (sin b) b) (sin.f64 a)))))
52.4%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
61.8%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))))
57.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
41.2%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))))
39.9%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
39.5%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (*.f64 (+.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a) #s(literal 1 binary64)) a)))))
8.0%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) b))))
12.7%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) a))))
62.3%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))))
60.5%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
56.0%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
36.1%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
53.5%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (*.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 a) (/.f64 (cos.f64 a) b)) b)))))
39.6%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
44.8%
(*.f64 r (/.f64 (exp.f64 (*.f64 (log.f64 (sin.f64 b)) #s(literal 1 binary64))) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
51.7%
(*.f64 r (/.f64 #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))) (cos.f64 (+.f64 a b))))
24.8%
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 #s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b))) b)) (cos.f64 (+.f64 a b))))
51.8%
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
55.5%
(*.f64 r (/.f64 #s(approx (sin b) b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
36.7%
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
52.0%
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
51.5%
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b)))
57.9%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (pow.f64 (tan.f64 b) #s(literal 2 binary64)) (tan.f64 b))))
29.5%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 (+.f64 (tan.f64 b) (tan.f64 (PI.f64))) (-.f64 #s(literal 1 binary64) (*.f64 (tan.f64 b) (tan.f64 (PI.f64)))))))
29.7%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
29.7%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
60.4%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
35.2%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
35.7%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
41.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
41.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))))
36.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
51.6%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b))
52.1%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
Compiler

Compiled 1 878 to 1 396 computations (25.7% saved)

series72.0ms (1.2%)

Memory
22.3MiB live, 121.6MiB allocated; 13ms collecting garbage
Counts
40 → 189
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
r
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))))
(sin.f64 b)
b
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(cos.f64 b)
(cos.f64 a)
a
(*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))
(neg.f64 (sin.f64 b))
(sin.f64 a)
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b))
#s(approx (tan b) b)
(/.f64 (*.f64 r #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 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)))
#s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
(*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)
(fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 b b)
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(cos.f64 (+.f64 a b))
(+.f64 a b)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))))
(/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))))
(cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))
#s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))
(*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)
(+.f64 (/.f64 b a) #s(literal 1 binary64))
(/.f64 b a)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b))
(*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b)
(fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a)))
(/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))
(*.f64 (sin.f64 a) r)
(pow.f64 (cos.f64 a) #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 r (cos.f64 a))
Outputs
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))))))
#s(approx r #s(hole binary64 r))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (+ a b)))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (/ (* r (sin b)) (cos (+ a b)))))
#s(approx (* r (sin b)) #s(hole binary64 (* r (sin b))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b (* r (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2)))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* r (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) #s(hole binary64 (/ (* r (sin a)) (pow (cos a) 2))))
#s(approx (* (sin a) r) #s(hole binary64 (* r (sin a))))
#s(approx (/ r (cos a)) #s(hole binary64 (/ r (cos a))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* -1 (* b (* r (- (* -1 (/ (* b (sin a)) (pow (cos a) 2))) (/ 1 (cos a))))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* -1 (* r (- (* -1 (/ (* b (sin a)) (pow (cos a) 2))) (/ 1 (cos a)))))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (cos b)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos b) (* a (+ (* -1 (sin b)) (* -1/2 (* a (cos b))))))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos b) (* a (+ (* -1 (sin b)) (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))))))))
#s(approx (cos a) #s(hole binary64 1))
#s(approx (cos a) #s(hole binary64 (+ 1 (* -1/2 (pow a 2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* 1/24 (pow a 2)) 1/2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/24 (* -1/720 (pow a 2)))) 1/2)))))
#s(approx a #s(hole binary64 a))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* -1 (* a (sin b)))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* a (+ (* -1 (sin b)) (* 1/6 (* (pow a 2) (sin b)))))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* a (+ (* -1 (sin b)) (* (pow a 2) (+ (* -1/120 (* (pow a 2) (sin b))) (* 1/6 (sin b))))))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* a (+ (* -1 (sin b)) (* (pow a 2) (+ (* 1/6 (sin b)) (* (pow a 2) (+ (* -1/120 (sin b)) (* 1/5040 (* (pow a 2) (sin b)))))))))))
#s(approx (sin a) #s(hole binary64 a))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* -1/6 (pow a 2))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* 1/120 (pow a 2)) 1/6))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/120 (* -1/5040 (pow a 2)))) 1/6))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos b)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))) (sin b))))))
#s(approx (+ a b) #s(hole binary64 b))
#s(approx (+ a b) #s(hole binary64 (+ a b)))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 b))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 (+ a b)))
#s(approx (+ (/ b a) 1) #s(hole binary64 (/ b a)))
#s(approx (+ (/ b a) 1) #s(hole binary64 (/ (+ a b) a)))
#s(approx (/ b a) #s(hole binary64 (/ b a)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b r)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (* (pow b 2) r)) (* b r))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (+ (* 1/2 (* a (* b r))) (* (pow b 2) r))) (* b r))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (+ (* a (+ (* 1/2 (* b r)) (* a (* b (- (* -1/6 (* b r)) (* -1 (* b r))))))) (* (pow b 2) r))) (* b r))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 r))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (* b r)))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (+ (* 1/2 (* a r)) (* b r))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (+ (* a (- (* a (- (* -1/6 (* b r)) (* -1 (* b r)))) (* -1/2 r))) (* b r))))))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) #s(hole binary64 (* a r)))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) #s(hole binary64 (* a (+ r (* (pow a 2) (- (* -1/6 r) (* -1 r)))))))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) #s(hole binary64 (* a (+ r (* (pow a 2) (- (+ (* -1/6 r) (* (pow a 2) (- (* 1/120 r) (+ (* -1 (- (* -1/6 r) (* -1 r))) (* 1/3 r))))) (* -1 r)))))))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) #s(hole binary64 (* a (+ r (* (pow a 2) (- (+ (* -1/6 r) (* (pow a 2) (- (+ (* 1/120 r) (* (pow a 2) (- (* -1/5040 r) (+ (* -1 (- (* 1/120 r) (+ (* -1 (- (* -1/6 r) (* -1 r))) (* 1/3 r)))) (+ (* -2/45 r) (* 1/3 (- (* -1/6 r) (* -1 r)))))))) (+ (* -1 (- (* -1/6 r) (* -1 r))) (* 1/3 r))))) (* -1 r)))))))
#s(approx (* (sin a) r) #s(hole binary64 (* a r)))
#s(approx (* (sin a) r) #s(hole binary64 (* a (+ r (* -1/6 (* (pow a 2) r))))))
#s(approx (* (sin a) r) #s(hole binary64 (* a (+ r (* (pow a 2) (+ (* -1/6 r) (* 1/120 (* (pow a 2) r))))))))
#s(approx (* (sin a) r) #s(hole binary64 (* a (+ r (* (pow a 2) (+ (* -1/6 r) (* (pow a 2) (+ (* -1/5040 (* (pow a 2) r)) (* 1/120 r)))))))))
#s(approx (pow (cos a) 2) #s(hole binary64 1))
#s(approx (pow (cos a) 2) #s(hole binary64 (+ 1 (* -1 (pow a 2)))))
#s(approx (pow (cos a) 2) #s(hole binary64 (+ 1 (* (pow a 2) (- (* 1/3 (pow a 2)) 1)))))
#s(approx (pow (cos a) 2) #s(hole binary64 (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/3 (* -2/45 (pow a 2)))) 1)))))
#s(approx (/ r (cos a)) #s(hole binary64 r))
#s(approx (/ r (cos a)) #s(hole binary64 (+ r (* 1/2 (* (pow a 2) r)))))
#s(approx (/ r (cos a)) #s(hole binary64 (+ r (* (pow a 2) (- (* -1 (* (pow a 2) (+ (* -1/4 r) (* 1/24 r)))) (* -1/2 r))))))
#s(approx (/ r (cos a)) #s(hole binary64 (+ r (* (pow a 2) (- (* (pow a 2) (- (* -1 (* (pow a 2) (+ (* -1/720 r) (+ (* 1/48 r) (* 1/2 (+ (* -1/4 r) (* 1/24 r))))))) (+ (* -1/4 r) (* 1/24 r)))) (* -1/2 r))))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (/ (sin b) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))))
#s(approx (cos a) #s(hole binary64 (cos a)))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* -1 (* (sin a) (sin b)))))
#s(approx (sin a) #s(hole binary64 (sin a)))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (+ a b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (+ a b))))
#s(approx (+ a b) #s(hole binary64 a))
#s(approx (+ a b) #s(hole binary64 (* a (+ 1 (/ b a)))))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 a))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 (* a (+ 1 (/ b a)))))
#s(approx (+ (/ b a) 1) #s(hole binary64 1))
#s(approx (+ (/ b a) 1) #s(hole binary64 (+ 1 (/ b a))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2)))))
#s(approx (pow (cos a) 2) #s(hole binary64 (pow (cos a) 2)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- b (* -1 a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- b (* -1 a))))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (/ (* r (sin b)) (cos (- b (* -1 a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- b (* -1 a)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* a (- (* -1 (/ b a)) 1)))))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 (* -1 (* a (- (* -1 (/ b a)) 1)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (sin b) #s(hole binary64 b))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* 1/120 (pow b 2)) 1/6))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/120 (* -1/5040 (pow b 2)))) 1/6))))))
#s(approx b #s(hole binary64 b))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (cos a)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos a) (* b (+ (* -1 (sin a)) (* -1/2 (* b (cos a))))))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos a) (* b (+ (* -1 (sin a)) (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))))))))
#s(approx (cos b) #s(hole binary64 1))
#s(approx (cos b) #s(hole binary64 (+ 1 (* -1/2 (pow b 2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* 1/24 (pow b 2)) 1/2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/24 (* -1/720 (pow b 2)))) 1/2)))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* -1 (* b (sin a)))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* b (+ (* -1 (sin a)) (* 1/6 (* (pow b 2) (sin a)))))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* b (+ (* -1 (sin a)) (* (pow b 2) (+ (* -1/120 (* (pow b 2) (sin a))) (* 1/6 (sin a))))))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* b (+ (* -1 (sin a)) (* (pow b 2) (+ (* 1/6 (sin a)) (* (pow b 2) (+ (* -1/120 (sin a)) (* 1/5040 (* (pow b 2) (sin a)))))))))))
#s(approx (neg (sin b)) #s(hole binary64 (* -1 b)))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* 1/6 (pow b 2)) 1))))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* (pow b 2) (+ 1/6 (* -1/120 (pow b 2)))) 1))))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* (pow b 2) (+ 1/6 (* (pow b 2) (- (* 1/5040 (pow b 2)) 1/120)))) 1))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (tan b) #s(hole binary64 b))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* 1/3 (pow b 2))))))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (+ 1/3 (* 2/15 (pow b 2))))))))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (+ 1/3 (* (pow b 2) (+ 2/15 (* 17/315 (pow b 2))))))))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (sin b)) #s(hole binary64 (* b r)))
#s(approx (* r (sin b)) #s(hole binary64 (* b (+ r (* -1/6 (* (pow b 2) r))))))
#s(approx (* r (sin b)) #s(hole binary64 (* b (+ r (* (pow b 2) (+ (* -1/6 r) (* 1/120 (* (pow b 2) r))))))))
#s(approx (* r (sin b)) #s(hole binary64 (* b (+ r (* (pow b 2) (+ (* -1/6 r) (* (pow b 2) (+ (* -1/5040 (* (pow b 2) r)) (* 1/120 r)))))))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 b))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 1))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (+ 1 (* -1/6 (pow b 2)))))
#s(approx (* b b) #s(hole binary64 (pow b 2)))
#s(approx (cos (+ a b)) #s(hole binary64 (cos a)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* -1/2 (* b (cos a))) (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))) (sin a))))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (/ r (cos a))))
#s(approx (sin b) #s(hole binary64 (sin b)))
#s(approx (cos b) #s(hole binary64 (cos b)))
#s(approx (neg (sin b)) #s(hole binary64 (* -1 (sin b))))
#s(approx (tan b) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* -1/6 (pow b 3))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* (pow b 3) (- (/ 1 (pow b 2)) 1/6))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (* -1/6 (pow b 2))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (* (pow b 2) (- (/ 1 (pow b 2)) 1/6))))
#s(approx (+ a b) #s(hole binary64 (* b (+ 1 (/ a b)))))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 (* b (+ 1 (/ a b)))))
#s(approx (+ (/ b a) 1) #s(hole binary64 (* b (+ (/ 1 a) (/ 1 b)))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (/ (* (pow b 2) (* r (sin a))) (pow (cos a) 2))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* (pow b 2) (+ (/ r (* b (cos a))) (/ (* r (sin a)) (pow (cos a) 2))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (/ (* b (* r (sin a))) (pow (cos a) 2))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* b (+ (/ r (* b (cos a))) (/ (* r (sin a)) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- a (* -1 b))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- a (* -1 b))))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (/ (* r (sin b)) (cos (- a (* -1 b))))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* -1 (* (pow b 3) (- 1/6 (/ 1 (pow b 2)))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- a (* -1 b)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* b (- (* -1 (/ a b)) 1)))))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 (* -1 (* b (- (* -1 (/ a b)) 1)))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* -1 (* b (+ (* -1 (/ r (* b (cos a)))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))))))
Calls

9 calls:

TimeVariablePointExpression
13.0ms
r
@0
((* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (sin b) b (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos b) (cos a) a (* (neg (sin b)) (sin a)) (neg (sin b)) (sin a) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (tan b) (/ (* r (sin b)) (cos (+ a b))) (* r (sin b)) (sin b) (* (+ (* (* b b) -1/6) 1) b) (+ (* (* b b) -1/6) 1) (* b b) -1/6 1 (cos (+ a b)) (+ a b) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ a b) (* (+ (/ b a) 1) a) (+ (/ b a) 1) (/ b a) (* r (/ (sin b) (cos (+ a b)))) (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/ (* (sin a) r) (pow (cos a) 2)) (* (sin a) r) (pow (cos a) 2) 2 (/ r (cos a)))
11.0ms
a
@inf
((* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (sin b) b (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos b) (cos a) a (* (neg (sin b)) (sin a)) (neg (sin b)) (sin a) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (tan b) (/ (* r (sin b)) (cos (+ a b))) (* r (sin b)) (sin b) (* (+ (* (* b b) -1/6) 1) b) (+ (* (* b b) -1/6) 1) (* b b) -1/6 1 (cos (+ a b)) (+ a b) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ a b) (* (+ (/ b a) 1) a) (+ (/ b a) 1) (/ b a) (* r (/ (sin b) (cos (+ a b)))) (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/ (* (sin a) r) (pow (cos a) 2)) (* (sin a) r) (pow (cos a) 2) 2 (/ r (cos a)))
10.0ms
r
@inf
((* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (sin b) b (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos b) (cos a) a (* (neg (sin b)) (sin a)) (neg (sin b)) (sin a) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (tan b) (/ (* r (sin b)) (cos (+ a b))) (* r (sin b)) (sin b) (* (+ (* (* b b) -1/6) 1) b) (+ (* (* b b) -1/6) 1) (* b b) -1/6 1 (cos (+ a b)) (+ a b) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ a b) (* (+ (/ b a) 1) a) (+ (/ b a) 1) (/ b a) (* r (/ (sin b) (cos (+ a b)))) (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/ (* (sin a) r) (pow (cos a) 2)) (* (sin a) r) (pow (cos a) 2) 2 (/ r (cos a)))
7.0ms
a
@-inf
((* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (sin b) b (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos b) (cos a) a (* (neg (sin b)) (sin a)) (neg (sin b)) (sin a) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (tan b) (/ (* r (sin b)) (cos (+ a b))) (* r (sin b)) (sin b) (* (+ (* (* b b) -1/6) 1) b) (+ (* (* b b) -1/6) 1) (* b b) -1/6 1 (cos (+ a b)) (+ a b) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ a b) (* (+ (/ b a) 1) a) (+ (/ b a) 1) (/ b a) (* r (/ (sin b) (cos (+ a b)))) (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/ (* (sin a) r) (pow (cos a) 2)) (* (sin a) r) (pow (cos a) 2) 2 (/ r (cos a)))
7.0ms
r
@-inf
((* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (sin b) b (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos b) (cos a) a (* (neg (sin b)) (sin a)) (neg (sin b)) (sin a) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (tan b) (/ (* r (sin b)) (cos (+ a b))) (* r (sin b)) (sin b) (* (+ (* (* b b) -1/6) 1) b) (+ (* (* b b) -1/6) 1) (* b b) -1/6 1 (cos (+ a b)) (+ a b) (* r (/ (sin b) (cos (+ a b)))) (/ (sin b) (cos (+ a b))) (cos (+ a b)) (+ a b) (* (+ (/ b a) 1) a) (+ (/ b a) 1) (/ b a) (* r (/ (sin b) (cos (+ a b)))) (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/ (* (sin a) r) (pow (cos a) 2)) (* (sin a) r) (pow (cos a) 2) 2 (/ r (cos a)))

rewrite220.0ms (3.8%)

Memory
2.6MiB live, 281.6MiB allocated; 51ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07685412
08174728
143714726
082784550
Stop Event
iter-limit
node-limit
iter-limit
Counts
229 → 434
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
r
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))))
(sin.f64 b)
b
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(cos.f64 b)
(cos.f64 a)
a
(*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))
(neg.f64 (sin.f64 b))
(sin.f64 a)
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b))
#s(approx (tan b) b)
(/.f64 (*.f64 r #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 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)))
#s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
(*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)
(fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 b b)
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(cos.f64 (+.f64 a b))
(+.f64 a b)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))))
(/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))))
(cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))
#s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))
(*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)
(+.f64 (/.f64 b a) #s(literal 1 binary64))
(/.f64 b a)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b))
(*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b)
(fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a)))
(/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))
(*.f64 (sin.f64 a) r)
(pow.f64 (cos.f64 a) #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 r (cos.f64 a))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))))))
#s(approx r #s(hole binary64 r))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (+ a b)))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (/ (* r (sin b)) (cos (+ a b)))))
#s(approx (* r (sin b)) #s(hole binary64 (* r (sin b))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b (* r (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2)))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* r (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) #s(hole binary64 (/ (* r (sin a)) (pow (cos a) 2))))
#s(approx (* (sin a) r) #s(hole binary64 (* r (sin a))))
#s(approx (/ r (cos a)) #s(hole binary64 (/ r (cos a))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* -1 (* b (* r (- (* -1 (/ (* b (sin a)) (pow (cos a) 2))) (/ 1 (cos a))))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* -1 (* r (- (* -1 (/ (* b (sin a)) (pow (cos a) 2))) (/ 1 (cos a)))))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (cos b)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos b) (* a (+ (* -1 (sin b)) (* -1/2 (* a (cos b))))))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos b) (* a (+ (* -1 (sin b)) (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))))))))
#s(approx (cos a) #s(hole binary64 1))
#s(approx (cos a) #s(hole binary64 (+ 1 (* -1/2 (pow a 2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* 1/24 (pow a 2)) 1/2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/24 (* -1/720 (pow a 2)))) 1/2)))))
#s(approx a #s(hole binary64 a))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* -1 (* a (sin b)))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* a (+ (* -1 (sin b)) (* 1/6 (* (pow a 2) (sin b)))))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* a (+ (* -1 (sin b)) (* (pow a 2) (+ (* -1/120 (* (pow a 2) (sin b))) (* 1/6 (sin b))))))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* a (+ (* -1 (sin b)) (* (pow a 2) (+ (* 1/6 (sin b)) (* (pow a 2) (+ (* -1/120 (sin b)) (* 1/5040 (* (pow a 2) (sin b)))))))))))
#s(approx (sin a) #s(hole binary64 a))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* -1/6 (pow a 2))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* 1/120 (pow a 2)) 1/6))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/120 (* -1/5040 (pow a 2)))) 1/6))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos b)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos b) (* a (- (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))) (sin b))))))
#s(approx (+ a b) #s(hole binary64 b))
#s(approx (+ a b) #s(hole binary64 (+ a b)))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 b))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 (+ a b)))
#s(approx (+ (/ b a) 1) #s(hole binary64 (/ b a)))
#s(approx (+ (/ b a) 1) #s(hole binary64 (/ (+ a b) a)))
#s(approx (/ b a) #s(hole binary64 (/ b a)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b r)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (* (pow b 2) r)) (* b r))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (+ (* 1/2 (* a (* b r))) (* (pow b 2) r))) (* b r))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (+ (* a (+ (* 1/2 (* b r)) (* a (* b (- (* -1/6 (* b r)) (* -1 (* b r))))))) (* (pow b 2) r))) (* b r))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 r))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (* b r)))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (+ (* 1/2 (* a r)) (* b r))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (+ (* a (- (* a (- (* -1/6 (* b r)) (* -1 (* b r)))) (* -1/2 r))) (* b r))))))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) #s(hole binary64 (* a r)))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) #s(hole binary64 (* a (+ r (* (pow a 2) (- (* -1/6 r) (* -1 r)))))))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) #s(hole binary64 (* a (+ r (* (pow a 2) (- (+ (* -1/6 r) (* (pow a 2) (- (* 1/120 r) (+ (* -1 (- (* -1/6 r) (* -1 r))) (* 1/3 r))))) (* -1 r)))))))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) #s(hole binary64 (* a (+ r (* (pow a 2) (- (+ (* -1/6 r) (* (pow a 2) (- (+ (* 1/120 r) (* (pow a 2) (- (* -1/5040 r) (+ (* -1 (- (* 1/120 r) (+ (* -1 (- (* -1/6 r) (* -1 r))) (* 1/3 r)))) (+ (* -2/45 r) (* 1/3 (- (* -1/6 r) (* -1 r)))))))) (+ (* -1 (- (* -1/6 r) (* -1 r))) (* 1/3 r))))) (* -1 r)))))))
#s(approx (* (sin a) r) #s(hole binary64 (* a r)))
#s(approx (* (sin a) r) #s(hole binary64 (* a (+ r (* -1/6 (* (pow a 2) r))))))
#s(approx (* (sin a) r) #s(hole binary64 (* a (+ r (* (pow a 2) (+ (* -1/6 r) (* 1/120 (* (pow a 2) r))))))))
#s(approx (* (sin a) r) #s(hole binary64 (* a (+ r (* (pow a 2) (+ (* -1/6 r) (* (pow a 2) (+ (* -1/5040 (* (pow a 2) r)) (* 1/120 r)))))))))
#s(approx (pow (cos a) 2) #s(hole binary64 1))
#s(approx (pow (cos a) 2) #s(hole binary64 (+ 1 (* -1 (pow a 2)))))
#s(approx (pow (cos a) 2) #s(hole binary64 (+ 1 (* (pow a 2) (- (* 1/3 (pow a 2)) 1)))))
#s(approx (pow (cos a) 2) #s(hole binary64 (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/3 (* -2/45 (pow a 2)))) 1)))))
#s(approx (/ r (cos a)) #s(hole binary64 r))
#s(approx (/ r (cos a)) #s(hole binary64 (+ r (* 1/2 (* (pow a 2) r)))))
#s(approx (/ r (cos a)) #s(hole binary64 (+ r (* (pow a 2) (- (* -1 (* (pow a 2) (+ (* -1/4 r) (* 1/24 r)))) (* -1/2 r))))))
#s(approx (/ r (cos a)) #s(hole binary64 (+ r (* (pow a 2) (- (* (pow a 2) (- (* -1 (* (pow a 2) (+ (* -1/720 r) (+ (* 1/48 r) (* 1/2 (+ (* -1/4 r) (* 1/24 r))))))) (+ (* -1/4 r) (* 1/24 r)))) (* -1/2 r))))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (/ (sin b) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))))
#s(approx (cos a) #s(hole binary64 (cos a)))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* -1 (* (sin a) (sin b)))))
#s(approx (sin a) #s(hole binary64 (sin a)))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (+ a b)))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (+ a b))))
#s(approx (+ a b) #s(hole binary64 a))
#s(approx (+ a b) #s(hole binary64 (* a (+ 1 (/ b a)))))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 a))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 (* a (+ 1 (/ b a)))))
#s(approx (+ (/ b a) 1) #s(hole binary64 1))
#s(approx (+ (/ b a) 1) #s(hole binary64 (+ 1 (/ b a))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2)))))
#s(approx (pow (cos a) 2) #s(hole binary64 (pow (cos a) 2)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- b (* -1 a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- b (* -1 a))))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (/ (* r (sin b)) (cos (- b (* -1 a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- b (* -1 a)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* a (- (* -1 (/ b a)) 1)))))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 (* -1 (* a (- (* -1 (/ b a)) 1)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (sin b) #s(hole binary64 b))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* 1/120 (pow b 2)) 1/6))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/120 (* -1/5040 (pow b 2)))) 1/6))))))
#s(approx b #s(hole binary64 b))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (cos a)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos a) (* b (+ (* -1 (sin a)) (* -1/2 (* b (cos a))))))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) #s(hole binary64 (+ (cos a) (* b (+ (* -1 (sin a)) (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))))))))
#s(approx (cos b) #s(hole binary64 1))
#s(approx (cos b) #s(hole binary64 (+ 1 (* -1/2 (pow b 2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* 1/24 (pow b 2)) 1/2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/24 (* -1/720 (pow b 2)))) 1/2)))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* -1 (* b (sin a)))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* b (+ (* -1 (sin a)) (* 1/6 (* (pow b 2) (sin a)))))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* b (+ (* -1 (sin a)) (* (pow b 2) (+ (* -1/120 (* (pow b 2) (sin a))) (* 1/6 (sin a))))))))
#s(approx (* (neg (sin b)) (sin a)) #s(hole binary64 (* b (+ (* -1 (sin a)) (* (pow b 2) (+ (* 1/6 (sin a)) (* (pow b 2) (+ (* -1/120 (sin a)) (* 1/5040 (* (pow b 2) (sin a)))))))))))
#s(approx (neg (sin b)) #s(hole binary64 (* -1 b)))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* 1/6 (pow b 2)) 1))))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* (pow b 2) (+ 1/6 (* -1/120 (pow b 2)))) 1))))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* (pow b 2) (+ 1/6 (* (pow b 2) (- (* 1/5040 (pow b 2)) 1/120)))) 1))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (tan b) #s(hole binary64 b))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* 1/3 (pow b 2))))))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (+ 1/3 (* 2/15 (pow b 2))))))))
#s(approx (tan b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (+ 1/3 (* (pow b 2) (+ 2/15 (* 17/315 (pow b 2))))))))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (sin b)) #s(hole binary64 (* b r)))
#s(approx (* r (sin b)) #s(hole binary64 (* b (+ r (* -1/6 (* (pow b 2) r))))))
#s(approx (* r (sin b)) #s(hole binary64 (* b (+ r (* (pow b 2) (+ (* -1/6 r) (* 1/120 (* (pow b 2) r))))))))
#s(approx (* r (sin b)) #s(hole binary64 (* b (+ r (* (pow b 2) (+ (* -1/6 r) (* (pow b 2) (+ (* -1/5040 (* (pow b 2) r)) (* 1/120 r)))))))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 b))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 1))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (+ 1 (* -1/6 (pow b 2)))))
#s(approx (* b b) #s(hole binary64 (pow b 2)))
#s(approx (cos (+ a b)) #s(hole binary64 (cos a)))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* -1/2 (* b (cos a))) (sin a))))))
#s(approx (cos (+ a b)) #s(hole binary64 (+ (cos a) (* b (- (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))) (sin a))))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (/ r (cos a))))
#s(approx (sin b) #s(hole binary64 (sin b)))
#s(approx (cos b) #s(hole binary64 (cos b)))
#s(approx (neg (sin b)) #s(hole binary64 (* -1 (sin b))))
#s(approx (tan b) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* -1/6 (pow b 3))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* (pow b 3) (- (/ 1 (pow b 2)) 1/6))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (* -1/6 (pow b 2))))
#s(approx (+ (* (* b b) -1/6) 1) #s(hole binary64 (* (pow b 2) (- (/ 1 (pow b 2)) 1/6))))
#s(approx (+ a b) #s(hole binary64 (* b (+ 1 (/ a b)))))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 (* b (+ 1 (/ a b)))))
#s(approx (+ (/ b a) 1) #s(hole binary64 (* b (+ (/ 1 a) (/ 1 b)))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (/ (* (pow b 2) (* r (sin a))) (pow (cos a) 2))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* (pow b 2) (+ (/ r (* b (cos a))) (/ (* r (sin a)) (pow (cos a) 2))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (/ (* b (* r (sin a))) (pow (cos a) 2))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* b (+ (/ r (* b (cos a))) (/ (* r (sin a)) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- a (* -1 b))))))
#s(approx (/ (sin b) (cos (+ a b))) #s(hole binary64 (/ (sin b) (cos (- a (* -1 b))))))
#s(approx (/ (* r (sin b)) (cos (+ a b))) #s(hole binary64 (/ (* r (sin b)) (cos (- a (* -1 b))))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) #s(hole binary64 (* -1 (* (pow b 3) (- 1/6 (/ 1 (pow b 2)))))))
#s(approx (cos (+ a b)) #s(hole binary64 (cos (- a (* -1 b)))))
#s(approx (+ a b) #s(hole binary64 (* -1 (* b (- (* -1 (/ a b)) 1)))))
#s(approx (* (+ (/ b a) 1) a) #s(hole binary64 (* -1 (* b (- (* -1 (/ a b)) 1)))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* -1 (* b (+ (* -1 (/ r (* b (cos a)))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))))))
Outputs
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) (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 (neg.f64 (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(pow.f64 (sin.f64 b) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64)))
(sin.f64 b)
(exp.f64 (*.f64 (log.f64 (sin.f64 b)) #s(literal 1 binary64)))
b
(/.f64 (-.f64 (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64))) (sin.f64 (-.f64 a (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64))) (cos.f64 (fma.f64 #s(literal -1 binary64) b a)))
(/.f64 (+.f64 (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))
(fma.f64 (sin.f64 (-.f64 a (neg.f64 b))) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(fma.f64 (sin.f64 (+.f64 a b)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.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 (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 (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 (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)))
(sin.f64 (+.f64 (neg.f64 (-.f64 a (neg.f64 b))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) a))
(sin.f64 (+.f64 a (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (-.f64 a (neg.f64 b)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 (*.f64 #s(literal 1 binary64) b))) (*.f64 (sin.f64 a) (sin.f64 (*.f64 #s(literal 1 binary64) b))))
(-.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (neg.f64 (cos.f64 a)) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (neg.f64 (sin.f64 b))) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (neg.f64 (neg.f64 (-.f64 a (neg.f64 b)))))
(cos.f64 (neg.f64 (neg.f64 (+.f64 a b))))
(cos.f64 (-.f64 (neg.f64 b) a))
(cos.f64 (neg.f64 (-.f64 a (neg.f64 b))))
(cos.f64 (neg.f64 (+.f64 a b)))
(cos.f64 (-.f64 a (neg.f64 b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (-.f64 a (neg.f64 b))) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(+.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)))
(pow.f64 (cos.f64 b) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 b) #s(literal -1 binary64)))
(fma.f64 (sin.f64 b) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 b) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (fma.f64 #s(literal -1 binary64) b (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 b)))
(cos.f64 (neg.f64 b))
(cos.f64 b)
(exp.f64 (*.f64 (log.f64 (cos.f64 b)) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 b) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 b) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(pow.f64 (cos.f64 a) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 a) #s(literal -1 binary64)))
(fma.f64 (sin.f64 a) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 a) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (fma.f64 #s(literal -1 binary64) a (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 a)))
(cos.f64 (neg.f64 a))
(cos.f64 a)
(exp.f64 (*.f64 (log.f64 (cos.f64 a)) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 a) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 a) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
a
(*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))
(*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))
(*.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(/.f64 (+.f64 (sin.f64 (-.f64 a (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (+.f64 a b)) (cos.f64 (fma.f64 #s(literal -1 binary64) b a))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 b (PI.f64)) a)) (cos.f64 (+.f64 (+.f64 b (PI.f64)) a))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 a (+.f64 b (PI.f64)))) (cos.f64 (+.f64 a (+.f64 b (PI.f64))))) #s(literal 2 binary64))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 #s(literal -1 binary64) (sin.f64 b))
(*.f64 (sin.f64 b) #s(literal -1 binary64))
(neg.f64 (sin.f64 b))
(fma.f64 (sin.f64 b) (cos.f64 (PI.f64)) (*.f64 (cos.f64 b) (sin.f64 (PI.f64))))
(sin.f64 (+.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (neg.f64 b))
(sin.f64 (+.f64 b (PI.f64)))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 b) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 (*.f64 (sin.f64 b) (cos.f64 (PI.f64))) (*.f64 (cos.f64 b) (sin.f64 (PI.f64))))
(pow.f64 (sin.f64 a) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 a) #s(literal -1 binary64)))
(sin.f64 a)
(exp.f64 (*.f64 (log.f64 (sin.f64 a)) #s(literal 1 binary64)))
(*.f64 #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(approx (tan b) b)) r)
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(approx (tan b) b)))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) #s(approx (tan b) b))
#s(approx (tan b) 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 (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 #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)) r)
(*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b)))
#s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
(*.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 #s(literal 1 binary64) b (*.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) b))
(fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))
(+.f64 (*.f64 b #s(literal 1 binary64)) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))
(+.f64 (*.f64 #s(literal 1 binary64) b) (*.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) b))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 b b) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) #s(literal -1/6 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 b (*.f64 b #s(literal -1/6 binary64)) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) #s(literal 1/6 binary64)))
(+.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))
(*.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 b)))
(*.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 b)))
(*.f64 (exp.f64 (log.f64 b)) (exp.f64 (log.f64 b)))
(*.f64 (neg.f64 (neg.f64 b)) (neg.f64 (neg.f64 b)))
(*.f64 (fabs.f64 b) (fabs.f64 b))
(*.f64 (neg.f64 b) (neg.f64 b))
(*.f64 b b)
(pow.f64 (exp.f64 (log.f64 b)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 b) #s(literal 2 binary64))
(pow.f64 (neg.f64 b) #s(literal 2 binary64))
(pow.f64 (*.f64 b b) #s(literal 1 binary64))
(pow.f64 b #s(literal 2 binary64))
(fabs.f64 (*.f64 b b))
(exp.f64 (*.f64 (log.f64 b) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 b) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 b) #s(literal 2 binary64))))
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(/.f64 (-.f64 (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64))) (sin.f64 (-.f64 a (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64))) (cos.f64 (fma.f64 #s(literal -1 binary64) b a)))
(/.f64 (+.f64 (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))
(fma.f64 (sin.f64 (-.f64 a (neg.f64 b))) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(fma.f64 (sin.f64 (+.f64 a b)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.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 (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 (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 (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)))
(sin.f64 (+.f64 (neg.f64 (-.f64 a (neg.f64 b))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) a))
(sin.f64 (+.f64 a (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (-.f64 a (neg.f64 b)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 (*.f64 #s(literal 1 binary64) b))) (*.f64 (sin.f64 a) (sin.f64 (*.f64 #s(literal 1 binary64) b))))
(-.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)) (*.f64 (neg.f64 (cos.f64 a)) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (neg.f64 (neg.f64 (sin.f64 b))) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 (neg.f64 (neg.f64 (-.f64 a (neg.f64 b)))))
(cos.f64 (neg.f64 (neg.f64 (+.f64 a b))))
(cos.f64 (-.f64 (neg.f64 b) a))
(cos.f64 (neg.f64 (-.f64 a (neg.f64 b))))
(cos.f64 (neg.f64 (+.f64 a b)))
(cos.f64 (-.f64 a (neg.f64 b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (-.f64 a (neg.f64 b))) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(+.f64 (*.f64 (sin.f64 (+.f64 a b)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (+.f64 a b)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(+.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 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 a b))
(/.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64))) (fma.f64 a a (-.f64 (*.f64 b b) (*.f64 a b))))
(+.f64 a b)
(+.f64 b a)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))))
(/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))))
(fma.f64 (sin.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))))
(cos.f64 (neg.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))))
(cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))
(+.f64 (*.f64 (sin.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
#s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))
(*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)
(*.f64 a (+.f64 (/.f64 b a) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) a (*.f64 (/.f64 b a) a))
(fma.f64 a #s(literal 1 binary64) (*.f64 a (/.f64 b a)))
(+.f64 (*.f64 #s(literal 1 binary64) a) (*.f64 (/.f64 b a) a))
(+.f64 (*.f64 a #s(literal 1 binary64)) (*.f64 a (/.f64 b a)))
(/.f64 (-.f64 (pow.f64 (/.f64 b a) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (/.f64 b a) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 b a) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (/.f64 b a)))
(/.f64 (+.f64 (pow.f64 (/.f64 b a) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (/.f64 b a) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 b a) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (/.f64 b a) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (/.f64 b a) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (/.f64 b a)))))
(+.f64 (/.f64 b a) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (/.f64 b a))
(/.f64 (neg.f64 b) (neg.f64 a))
(/.f64 b a)
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))) b))
(*.f64 (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))) b)
(*.f64 b (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))))
(fma.f64 (/.f64 r (cos.f64 a)) b (*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) b))
(fma.f64 b (/.f64 r (cos.f64 a)) (*.f64 b (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))
(+.f64 (*.f64 (/.f64 r (cos.f64 a)) b) (*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) b))
(+.f64 (*.f64 b (/.f64 r (cos.f64 a))) (*.f64 b (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 r (cos.f64 a)) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal 2 binary64))) (-.f64 (/.f64 r (cos.f64 a)) (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 (/.f64 r (cos.f64 a)) #s(literal 2 binary64))) (-.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))))
(/.f64 (+.f64 (pow.f64 (/.f64 r (cos.f64 a)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 r (cos.f64 a)) #s(literal 2 binary64)) (-.f64 (pow.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (/.f64 r (cos.f64 a)) (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 r (cos.f64 a)) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (/.f64 r (cos.f64 a)) #s(literal 2 binary64)) (*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))))))
(/.f64 (fma.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)) (*.f64 (cos.f64 a) (*.f64 (*.f64 (sin.f64 a) r) b))) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))
(fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a)))
(fma.f64 b (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) (/.f64 r (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a)))
(+.f64 (/.f64 r (cos.f64 a)) (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))
(*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))))
(*.f64 r (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (sin.f64 a) r)) (neg.f64 (pow.f64 (cos.f64 a) #s(literal 2 binary64))))
(/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))
(*.f64 (sin.f64 a) r)
(*.f64 r (sin.f64 a))
(*.f64 (fabs.f64 (cos.f64 a)) (fabs.f64 (cos.f64 a)))
(*.f64 (exp.f64 (log.f64 (cos.f64 a))) (exp.f64 (log.f64 (cos.f64 a))))
(*.f64 (neg.f64 (cos.f64 a)) (neg.f64 (cos.f64 a)))
(*.f64 (cos.f64 a) (cos.f64 a))
(pow.f64 (exp.f64 (log.f64 (cos.f64 a))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (cos.f64 a) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (cos.f64 a) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 a))) (sin.f64 (+.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) a)) (sin.f64 (+.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) a))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) a (neg.f64 a))) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) a a)) (cos.f64 (-.f64 (neg.f64 a) a))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (neg.f64 a))) (cos.f64 (-.f64 a (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a a)) (cos.f64 (-.f64 a a))) #s(literal 2 binary64))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(-.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 a) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (cos.f64 a)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (cos.f64 a)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (cos.f64 a)) #s(literal 2 binary64))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 a)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) a))))
#s(literal 2 binary64)
(/.f64 (neg.f64 r) (neg.f64 (cos.f64 a)))
(/.f64 r (cos.f64 a))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx r r)
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx (* r (sin b)) (*.f64 (sin.f64 b) r))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (*.f64 b r) (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64)))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) r))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))
#s(approx (* (sin a) r) (*.f64 (sin.f64 a) r))
#s(approx (/ r (cos a)) (/.f64 r (cos.f64 a)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (neg.f64 (*.f64 (*.f64 b r) (-.f64 (/.f64 (*.f64 (neg.f64 b) (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (*.f64 (neg.f64 r) (-.f64 (/.f64 (*.f64 (neg.f64 b) (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 r (tan.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (fma.f64 r (tan.f64 b) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) a) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (fma.f64 (fma.f64 (neg.f64 a) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64)))))) a (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (tan.f64 b))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (fma.f64 a (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (tan.f64 b)))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (fma.f64 (*.f64 #s(literal -1 binary64) (-.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) a) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal 1/6 binary64) (/.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) a (*.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos.f64 b))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (neg.f64 a) (sin.f64 b) (cos.f64 b)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) a) (cos.f64 b) (neg.f64 (sin.f64 b))) a (cos.f64 b)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 b) a) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) a (neg.f64 (sin.f64 b))) a (cos.f64 b)))
#s(approx (cos a) #s(literal 1 binary64))
#s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos a) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 a a)) #s(literal 1/2 binary64)) (*.f64 a a) #s(literal 1 binary64)))
#s(approx (cos a) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 a a) #s(literal 1/24 binary64)) (*.f64 a a)) #s(literal 1/2 binary64)) (*.f64 a a) #s(literal 1 binary64)))
#s(approx a a)
#s(approx (* (neg (sin b)) (sin a)) (*.f64 (neg.f64 a) (sin.f64 b)))
#s(approx (* (neg (sin b)) (sin a)) (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 a a)) (sin.f64 b) (neg.f64 (sin.f64 b))) a))
#s(approx (* (neg (sin b)) (sin a)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 a a)) (sin.f64 b) (*.f64 #s(literal 1/6 binary64) (sin.f64 b))) (*.f64 a a) (neg.f64 (sin.f64 b))) a))
#s(approx (* (neg (sin b)) (sin a)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 a a)) (sin.f64 b) (*.f64 #s(literal -1/120 binary64) (sin.f64 b))) (*.f64 a a) (*.f64 #s(literal 1/6 binary64) (sin.f64 b))) (*.f64 a a) (neg.f64 (sin.f64 b))) a))
#s(approx (sin a) a)
#s(approx (sin a) (*.f64 (fma.f64 (*.f64 a a) #s(literal -1/6 binary64) #s(literal 1 binary64)) a))
#s(approx (sin a) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 a a)) #s(literal 1/6 binary64)) (*.f64 a a) #s(literal 1 binary64)) a))
#s(approx (sin a) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 a a) #s(literal 1/120 binary64)) (*.f64 a a)) #s(literal 1/6 binary64)) (*.f64 a a) #s(literal 1 binary64)) a))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 r (tan.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (fma.f64 r (tan.f64 b) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) a) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (fma.f64 (fma.f64 (neg.f64 a) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64)))))) a (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (tan.f64 b))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (fma.f64 a (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (tan.f64 b)))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (fma.f64 (*.f64 #s(literal -1 binary64) (-.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) a) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal 1/6 binary64) (/.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) a (*.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 r (tan.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (fma.f64 r (tan.f64 b) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) a) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (fma.f64 (fma.f64 (neg.f64 a) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64)))))) a (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos.f64 b))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (neg.f64 a) (sin.f64 b) (cos.f64 b)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) a (cos.f64 b)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 b) a) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) a) (sin.f64 b)) a (cos.f64 b)))
#s(approx (+ a b) b)
#s(approx (+ a b) (+.f64 a b))
#s(approx (* (+ (/ b a) 1) a) b)
#s(approx (* (+ (/ b a) 1) a) (+.f64 a b))
#s(approx (+ (/ b a) 1) (/.f64 b a))
#s(approx (+ (/ b a) 1) (/.f64 (+.f64 a b) a))
#s(approx (/ b a) (/.f64 b a))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 b r))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 b r) #s(literal 5/6 binary64)) b) a (*.f64 (*.f64 b r) #s(literal 1/2 binary64))) a (*.f64 (*.f64 b b) r)) a (*.f64 b r)))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) r)
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b r) #s(literal 5/6 binary64)) a (*.f64 #s(literal 1/2 binary64) r)) a (*.f64 b r)) a r))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) (*.f64 a r))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) (*.f64 (fma.f64 (*.f64 r #s(literal 5/6 binary64)) (*.f64 a a) r) a))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) (*.f64 (fma.f64 (-.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) r) (fma.f64 #s(literal 1/3 binary64) r (neg.f64 (*.f64 r #s(literal 5/6 binary64))))) (*.f64 a a) (*.f64 #s(literal -1/6 binary64) r)) (neg.f64 r)) (*.f64 a a) r) a))
#s(approx (/ (* (sin a) r) (pow (cos a) 2)) (*.f64 (fma.f64 (-.f64 (fma.f64 (-.f64 (fma.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) r) (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) r) (fma.f64 #s(literal 1/3 binary64) r (neg.f64 (*.f64 r #s(literal 5/6 binary64))))) #s(literal -1 binary64) (fma.f64 #s(literal -2/45 binary64) r (*.f64 #s(literal 1/3 binary64) (*.f64 r #s(literal 5/6 binary64)))))) (*.f64 a a) (*.f64 #s(literal 1/120 binary64) r)) (fma.f64 #s(literal 1/3 binary64) r (neg.f64 (*.f64 r #s(literal 5/6 binary64))))) (*.f64 a a) (*.f64 #s(literal -1/6 binary64) r)) (neg.f64 r)) (*.f64 a a) r) a))
#s(approx (* (sin a) r) (*.f64 a r))
#s(approx (* (sin a) r) (*.f64 (fma.f64 (*.f64 (*.f64 a a) r) #s(literal -1/6 binary64) r) a))
#s(approx (* (sin a) r) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 a a) r) #s(literal 1/120 binary64) (*.f64 #s(literal -1/6 binary64) r)) (*.f64 a a) r) a))
#s(approx (* (sin a) r) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 a a) r) #s(literal -1/5040 binary64) (*.f64 #s(literal 1/120 binary64) r)) (*.f64 a a) (*.f64 #s(literal -1/6 binary64) r)) (*.f64 a a) r) a))
#s(approx (pow (cos a) 2) #s(literal 1 binary64))
#s(approx (pow (cos a) 2) (fma.f64 (*.f64 a a) #s(literal -1 binary64) #s(literal 1 binary64)))
#s(approx (pow (cos a) 2) (fma.f64 (-.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 a a)) #s(literal 1 binary64)) (*.f64 a a) #s(literal 1 binary64)))
#s(approx (pow (cos a) 2) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -2/45 binary64) (*.f64 a a) #s(literal 1/3 binary64)) (*.f64 a a)) #s(literal 1 binary64)) (*.f64 a a) #s(literal 1 binary64)))
#s(approx (/ r (cos a)) r)
#s(approx (/ r (cos a)) (fma.f64 (*.f64 (*.f64 a a) r) #s(literal 1/2 binary64) r))
#s(approx (/ r (cos a)) (fma.f64 (fma.f64 (neg.f64 (*.f64 a a)) (*.f64 r #s(literal -5/24 binary64)) (*.f64 #s(literal 1/2 binary64) r)) (*.f64 a a) r))
#s(approx (/ r (cos a)) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 (*.f64 a a)) (fma.f64 #s(literal -1/720 binary64) r (fma.f64 #s(literal 1/48 binary64) r (*.f64 (*.f64 r #s(literal -5/24 binary64)) #s(literal 1/2 binary64))))) (*.f64 r #s(literal -5/24 binary64))) (*.f64 a a) (*.f64 #s(literal 1/2 binary64) r)) (*.f64 a a) r))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos.f64 (+.f64 a b)))
#s(approx (cos a) (cos.f64 a))
#s(approx (* (neg (sin b)) (sin a)) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))
#s(approx (sin a) (sin.f64 a))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos.f64 (+.f64 a b)))
#s(approx (+ a b) a)
#s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))
#s(approx (* (+ (/ b a) 1) a) a)
#s(approx (* (+ (/ b a) 1) a) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))
#s(approx (+ (/ b a) 1) #s(literal 1 binary64))
#s(approx (+ (/ b a) 1) (+.f64 (/.f64 b a) #s(literal 1 binary64)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))) b))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))))
#s(approx (pow (cos a) 2) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (neg.f64 a)))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 (sin.f64 b) (cos.f64 (-.f64 b (neg.f64 a)))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (neg.f64 a)))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos.f64 (-.f64 b (neg.f64 a))))
#s(approx (+ a b) (*.f64 (neg.f64 a) (-.f64 (/.f64 (neg.f64 b) a) #s(literal 1 binary64))))
#s(approx (* (+ (/ b a) 1) a) (*.f64 (neg.f64 a) (-.f64 (/.f64 (neg.f64 b) a) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) b) (neg.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) b) (/.f64 (neg.f64 (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a))))) b (*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (sin b) b)
#s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
#s(approx (sin b) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 b b) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx (sin b) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 b b)) #s(literal 1/6 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx b b)
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos.f64 a))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) b) (cos.f64 a) (neg.f64 (sin.f64 a))) b (cos.f64 a)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 a) b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b (neg.f64 (sin.f64 a))) b (cos.f64 a)))
#s(approx (cos b) #s(literal 1 binary64))
#s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos b) (fma.f64 (-.f64 (*.f64 (*.f64 b b) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 b b) #s(literal 1 binary64)))
#s(approx (cos b) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 b b)) #s(literal 1/2 binary64)) (*.f64 b b) #s(literal 1 binary64)))
#s(approx (* (neg (sin b)) (sin a)) (*.f64 (neg.f64 b) (sin.f64 a)))
#s(approx (* (neg (sin b)) (sin a)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal 1/6 binary64)) (sin.f64 a) (neg.f64 (sin.f64 a))) b))
#s(approx (* (neg (sin b)) (sin a)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/120 binary64)) (sin.f64 a) (*.f64 #s(literal 1/6 binary64) (sin.f64 a))) (*.f64 b b) (neg.f64 (sin.f64 a))) b))
#s(approx (* (neg (sin b)) (sin a)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal 1/5040 binary64)) (sin.f64 a) (*.f64 #s(literal -1/120 binary64) (sin.f64 a))) (*.f64 b b) (*.f64 #s(literal 1/6 binary64) (sin.f64 a))) (*.f64 b b) (neg.f64 (sin.f64 a))) b))
#s(approx (neg (sin b)) (neg.f64 b))
#s(approx (neg (sin b)) (*.f64 (-.f64 (*.f64 (*.f64 b b) #s(literal 1/6 binary64)) #s(literal 1 binary64)) b))
#s(approx (neg (sin b)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) (*.f64 b b)) #s(literal 1 binary64)) b))
#s(approx (neg (sin b)) (*.f64 (-.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 b b) #s(literal 1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 b b) #s(literal 1/6 binary64)) (*.f64 b b)) #s(literal 1 binary64)) b))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) b) (neg.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) b) (/.f64 (neg.f64 (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a))))) b (*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (tan b) b)
#s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx (tan b) (*.f64 (fma.f64 (fma.f64 #s(literal 2/15 binary64) (*.f64 b b) #s(literal 1/3 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx (tan b) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 17/315 binary64) (*.f64 b b) #s(literal 2/15 binary64)) (*.f64 b b) #s(literal 1/3 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) b) (neg.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) #s(literal -1/6 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (sin b)) (*.f64 b r))
#s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b))
#s(approx (* r (sin b)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal 1/120 binary64)) r (*.f64 #s(literal -1/6 binary64) r)) (*.f64 b b) r) b))
#s(approx (* r (sin b)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/5040 binary64)) r (*.f64 #s(literal 1/120 binary64) r)) (*.f64 b b) (*.f64 #s(literal -1/6 binary64) r)) (*.f64 b b) r) b))
#s(approx (* (+ (* (* b b) -1/6) 1) b) b)
#s(approx (* (+ (* (* b b) -1/6) 1) b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
#s(approx (+ (* (* b b) -1/6) 1) #s(literal 1 binary64))
#s(approx (+ (* (* b b) -1/6) 1) (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)))
#s(approx (* b b) (*.f64 b b))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos.f64 a))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a)))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 a) b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b) (sin.f64 a)) b (cos.f64 a)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 r (cos.f64 a)))
#s(approx (sin b) (sin.f64 b))
#s(approx (cos b) (cos.f64 b))
#s(approx (neg (sin b)) (neg.f64 (sin.f64 b)))
#s(approx (tan b) (tan.f64 b))
#s(approx (* (+ (* (* b b) -1/6) 1) b) (*.f64 (pow.f64 b #s(literal 3 binary64)) #s(literal -1/6 binary64)))
#s(approx (* (+ (* (* b b) -1/6) 1) b) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (pow.f64 b #s(literal 3 binary64))))
#s(approx (+ (* (* b b) -1/6) 1) (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))
#s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b)))
#s(approx (+ a b) (*.f64 (+.f64 (/.f64 a b) #s(literal 1 binary64)) b))
#s(approx (* (+ (/ b a) 1) a) (*.f64 (+.f64 (/.f64 a b) #s(literal 1 binary64)) b))
#s(approx (+ (/ b a) 1) (fma.f64 (pow.f64 a #s(literal -1 binary64)) b #s(literal 1 binary64)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (*.f64 b b) (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))) (*.f64 b b)))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (*.f64 (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))) b))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx (* (+ (* (* b b) -1/6) 1) b) (*.f64 (pow.f64 (neg.f64 b) #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (pow.f64 b #s(literal -2 binary64)))))
#s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (cos.f64 (+.f64 a b)))
#s(approx (+ a b) (*.f64 (neg.f64 b) (-.f64 (/.f64 (neg.f64 a) b) #s(literal 1 binary64))))
#s(approx (* (+ (/ b a) 1) a) (*.f64 (neg.f64 b) (-.f64 (/.f64 (neg.f64 a) b) #s(literal 1 binary64))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))))))

eval65.0ms (1.1%)

Memory
-17.4MiB live, 128.5MiB allocated; 13ms collecting garbage
Compiler

Compiled 12 356 to 2 168 computations (82.5% saved)

prune61.0ms (1.1%)

Memory
-6.5MiB live, 135.9MiB allocated; 13ms collecting garbage
Pruning

56 alts after pruning (52 fresh and 4 done)

PrunedKeptTotal
New43625461
Fresh132740
Picked325
Done022
Total45256508
Accuracy
99.8%
Counts
508 → 56
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.2%
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
62.3%
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))))
51.7%
(/.f64 (*.f64 r #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))))) (cos.f64 (+.f64 a b)))
52.4%
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) #s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 a) b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b) (sin.f64 a)) b (cos.f64 a))))
51.6%
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) #s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a))))
24.8%
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 #s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b))) b))) (cos.f64 (+.f64 a b)))
51.9%
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
51.7%
(/.f64 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
99.4%
(*.f64 r (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
40.9%
(*.f64 r (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 b) #s(literal -1 binary64))) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
99.1%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (fma.f64 (sin.f64 b) (cos.f64 (PI.f64)) (*.f64 (cos.f64 b) (sin.f64 (PI.f64)))) (sin.f64 a)))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64)))) (sin.f64 a)))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
52.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
99.3%
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)) (fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 a) #s(literal -1 binary64)))))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
61.8%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))))
57.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
41.2%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))))
39.9%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
39.5%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (*.f64 (+.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a) #s(literal 1 binary64)) a)))))
8.0%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) b))))
12.7%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) a))))
60.4%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 #s(approx (+ (/ b a) 1) (fma.f64 (pow.f64 a #s(literal -1 binary64)) b #s(literal 1 binary64))) a)))))
45.5%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 #s(approx (+ (/ b a) 1) (/.f64 b a)) a)))))
60.5%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) b)))))
56.0%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) a)))))
36.1%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
53.5%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (*.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 a) (/.f64 (cos.f64 a) b)) b)))))
39.6%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
55.5%
(*.f64 r (/.f64 #s(approx (sin b) b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
52.0%
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
36.7%
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
57.9%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (pow.f64 (tan.f64 b) #s(literal 2 binary64)) (tan.f64 b))))
29.5%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 (+.f64 (tan.f64 b) (tan.f64 (PI.f64))) (-.f64 #s(literal 1 binary64) (*.f64 (tan.f64 b) (tan.f64 (PI.f64)))))))
29.7%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
29.7%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
60.4%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
35.2%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
35.7%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
52.1%
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
41.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
41.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))))
36.7%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
51.6%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) a))))) (/.f64 r (cos.f64 a))) b))
30.5%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
34.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
33.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
34.3%
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
33.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))) (*.f64 b b))))
51.6%
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (*.f64 b r) (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))))))
Compiler

Compiled 2 638 to 1 869 computations (29.2% saved)

series66.0ms (1.1%)

Memory
10.8MiB live, 101.4MiB allocated; 13ms collecting garbage
Counts
35 → 227
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
r
(/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(sin.f64 b)
b
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(sin.f64 a)
a
(neg.f64 (sin.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(cos.f64 a)
(cos.f64 b)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
(*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b)
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r))
(fma.f64 (*.f64 b r) a r)
(*.f64 b r)
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))
(sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))
(fma.f64 #s(literal 1/2 binary64) (PI.f64) a)
#s(literal 1/2 binary64)
(PI.f64)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b))))
(*.f64 (sin.f64 b) r)
(sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))
(-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b))
(neg.f64 b)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
(-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
#s(approx (* (cos b) (cos a)) (cos.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
Outputs
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))))))
#s(approx r #s(hole binary64 r))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (+ a b)))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b (* r (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2)))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* r (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* r (+ 1 (* a b)))))
#s(approx (* b r) #s(hole binary64 (* b r)))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (+ a (+ b (* 1/2 (PI))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (/ (* r (sin b)) (sin (+ a (+ b (* 1/2 (PI))))))))
#s(approx (* (sin b) r) #s(hole binary64 (* r (sin b))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (- (* (cos a) (cos b)) (* (sin a) (sin b))))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* -1 (* b (* r (- (* -1 (/ (* b (sin a)) (pow (cos a) 2))) (/ 1 (cos a))))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* -1 (* r (- (* -1 (/ (* b (sin a)) (pow (cos a) 2))) (/ 1 (cos a)))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* -1 (* r (- (* -1 (* a b)) 1)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (cos b)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos b) (* a (+ (* -1 (sin b)) (* -1/2 (* a (cos b))))))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos b) (* a (+ (* -1 (sin b)) (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))))))))
#s(approx (sin a) #s(hole binary64 a))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* -1/6 (pow a 2))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* 1/120 (pow a 2)) 1/6))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/120 (* -1/5040 (pow a 2)))) 1/6))))))
#s(approx a #s(hole binary64 a))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (cos b)))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos b) (* -1/2 (* (pow a 2) (cos b))))))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* 1/24 (* (pow a 2) (cos b))))))))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* (pow a 2) (+ (* -1/720 (* (pow a 2) (cos b))) (* 1/24 (cos b)))))))))
#s(approx (cos a) #s(hole binary64 1))
#s(approx (cos a) #s(hole binary64 (+ 1 (* -1/2 (pow a 2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* 1/24 (pow a 2)) 1/2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/24 (* -1/720 (pow a 2)))) 1/2)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b r)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (* (pow b 2) r)) (* b r))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (+ (* 1/2 (* a (* b r))) (* (pow b 2) r))) (* b r))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (+ (* a (+ (* 1/2 (* b r)) (* a (* b (- (* -1/6 (* b r)) (* -1 (* b r))))))) (* (pow b 2) r))) (* b r))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 r))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (* b r)))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (+ (* 1/2 (* a r)) (* b r))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (+ (* a (- (* a (- (* -1/6 (* b r)) (* -1 (* b r)))) (* -1/2 r))) (* b r))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 r))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (+ r (* a (* b r)))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* -1 (/ (* a (* r (* (cos (+ b (* 1/2 (PI)))) (sin b)))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (+ b (* 1/2 (PI)))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))) (sin (+ b (* 1/2 (PI)))))) (+ (* -1/6 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (* 1/2 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))))))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (+ b (* 1/2 (PI)))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* -1 (/ (* a (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI))))))))) (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (+ b (* 1/2 (PI)))) (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI)))))))) (sin (+ b (* 1/2 (PI)))))) (+ (* -1/6 (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2))) (* 1/2 (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2))))))) (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI))))))))) (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (/ b (sin (* 1/2 (PI))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (+ (* -1 (/ (* a (* b (cos (* 1/2 (PI))))) (pow (sin (* 1/2 (PI))) 2))) (/ b (sin (* 1/2 (PI)))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* b (pow (cos (* 1/2 (PI))) 2)) (pow (sin (* 1/2 (PI))) 3))) (* -1/2 (/ b (sin (* 1/2 (PI)))))))) (/ (* b (cos (* 1/2 (PI)))) (pow (sin (* 1/2 (PI))) 2)))) (/ b (sin (* 1/2 (PI)))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (* 1/2 (PI))) (+ (* -1 (/ (* b (pow (cos (* 1/2 (PI))) 2)) (pow (sin (* 1/2 (PI))) 3))) (* -1/2 (/ b (sin (* 1/2 (PI))))))) (sin (* 1/2 (PI))))) (+ (* -1/6 (/ (* b (cos (* 1/2 (PI)))) (pow (sin (* 1/2 (PI))) 2))) (* 1/2 (/ (* b (cos (* 1/2 (PI)))) (pow (sin (* 1/2 (PI))) 2))))))) (+ (* -1 (/ (* b (pow (cos (* 1/2 (PI))) 2)) (pow (sin (* 1/2 (PI))) 3))) (* -1/2 (/ b (sin (* 1/2 (PI)))))))) (/ (* b (cos (* 1/2 (PI)))) (pow (sin (* 1/2 (PI))) 2)))) (/ b (sin (* 1/2 (PI)))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* a (cos (* 1/2 (PI)))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* a (+ (cos (* 1/2 (PI))) (* -1/2 (* a (sin (* 1/2 (PI))))))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* a (+ (cos (* 1/2 (PI))) (* a (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* a (cos (* 1/2 (PI))))))))))))
#s(approx (+ (* 1/2 (PI)) a) #s(hole binary64 (* 1/2 (PI))))
#s(approx (+ (* 1/2 (PI)) a) #s(hole binary64 (+ a (* 1/2 (PI)))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (+ (* -1 (/ (* a (* r (* (cos (+ b (* 1/2 (PI)))) (sin b)))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (+ b (* 1/2 (PI)))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))) (sin (+ b (* 1/2 (PI)))))) (+ (* -1/6 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (* 1/2 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))))))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (sin (+ b (* 1/2 (PI))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (cos (+ b (* 1/2 (PI))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (+ (cos (+ b (* 1/2 (PI)))) (* -1/2 (* a (sin (+ b (* 1/2 (PI)))))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (+ (cos (+ b (* 1/2 (PI)))) (* a (+ (* -1/2 (sin (+ b (* 1/2 (PI))))) (* -1/6 (* a (cos (+ b (* 1/2 (PI)))))))))))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (+ b (* 1/2 (PI)))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (+ a (+ b (* 1/2 (PI))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (cos b)))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* a (- (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))) (sin b))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (cos b)))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* -1/2 (* (pow a 2) (cos b))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* 1/24 (* (pow a 2) (cos b))))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* (pow a 2) (+ (* -1/720 (* (pow a 2) (cos b))) (* 1/24 (cos b)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (sin b))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* -1/6 (* (pow a 2) (sin b)))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* (pow a 2) (+ (* -1/6 (sin b)) (* 1/120 (* (pow a 2) (sin b)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* (pow a 2) (+ (* -1/6 (sin b)) (* (pow a 2) (+ (* -1/5040 (* (pow a 2) (sin b))) (* 1/120 (sin b))))))))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (/ (sin b) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))))
#s(approx (sin a) #s(hole binary64 (sin a)))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (* (cos a) (cos b))))
#s(approx (cos a) #s(hole binary64 (cos a)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2)))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* a (* b r))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* a (+ (* b r) (/ r a)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (+ a (+ b (* 1/2 (PI))))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (/ b (sin (+ a (* 1/2 (PI)))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (sin (+ a (* 1/2 (PI))))))
#s(approx (+ (* 1/2 (PI)) a) #s(hole binary64 a))
#s(approx (+ (* 1/2 (PI)) a) #s(hole binary64 (* a (+ 1 (* 1/2 (/ (PI) a))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (sin (+ a (+ b (* 1/2 (PI)))))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 a))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (* a (+ 1 (+ (* 1/2 (/ (PI) a)) (/ b a))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ (sin b) (- (* (cos a) (cos b)) (* (sin a) (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (- (* (cos a) (cos b)) (* (sin a) (sin b)))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (* (cos a) (cos b))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* (sin a) (sin b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- b (* -1 a))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* -1 (* a (+ (* -1 (* b r)) (* -1 (/ r a)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ b (* 1/2 (PI))) (* -1 a))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (- (+ b (* 1/2 (PI))) (* -1 a))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (/ b (sin (- (* 1/2 (PI)) (* -1 a))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (sin (- (* 1/2 (PI)) (* -1 a)))))
#s(approx (+ (* 1/2 (PI)) a) #s(hole binary64 (* -1 (* a (- (* -1/2 (/ (PI) a)) 1)))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ b (* 1/2 (PI))) (* -1 a))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (sin (- (+ b (* 1/2 (PI))) (* -1 a)))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (* -1 (* a (- (* -1 (/ (+ b (* 1/2 (PI))) a)) 1)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (sin b) #s(hole binary64 b))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* 1/120 (pow b 2)) 1/6))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/120 (* -1/5040 (pow b 2)))) 1/6))))))
#s(approx b #s(hole binary64 b))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (cos a)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos a) (* b (+ (* -1 (sin a)) (* -1/2 (* b (cos a))))))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos a) (* b (+ (* -1 (sin a)) (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))))))))
#s(approx (neg (sin b)) #s(hole binary64 (* -1 b)))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* 1/6 (pow b 2)) 1))))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* (pow b 2) (+ 1/6 (* -1/120 (pow b 2)))) 1))))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* (pow b 2) (+ 1/6 (* (pow b 2) (- (* 1/5040 (pow b 2)) 1/120)))) 1))))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (cos a)))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos a) (* -1/2 (* (pow b 2) (cos a))))))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* 1/24 (* (pow b 2) (cos a))))))))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* (pow b 2) (+ (* -1/720 (* (pow b 2) (cos a))) (* 1/24 (cos a)))))))))
#s(approx (cos b) #s(hole binary64 1))
#s(approx (cos b) #s(hole binary64 (+ 1 (* -1/2 (pow b 2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* 1/24 (pow b 2)) 1/2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/24 (* -1/720 (pow b 2)))) 1/2)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (/ r (cos a))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* b r) (sin (+ a (* 1/2 (PI)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* -1 (/ (* b (* r (cos (+ a (* 1/2 (PI)))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1/6 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (+ (* 1/2 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ (* (cos (+ a (* 1/2 (PI)))) (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (sin (+ a (* 1/2 (PI))))))))) (* -1/6 (/ r (sin (+ a (* 1/2 (PI))))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ b (sin (+ a (* 1/2 (PI)))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* -1 (/ (* b (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1/6 (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (+ (* 1/2 (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ (* (cos (+ a (* 1/2 (PI)))) (- (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (sin (+ a (* 1/2 (PI))))))))) (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI))))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (/ (* b r) (sin (+ a (* 1/2 (PI)))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (* b (+ (* -1 (/ (* b (* r (cos (+ a (* 1/2 (PI)))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1/6 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (+ (* 1/2 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ (* (cos (+ a (* 1/2 (PI)))) (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (sin (+ a (* 1/2 (PI))))))))) (* -1/6 (/ r (sin (+ a (* 1/2 (PI))))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (* (sin b) r) #s(hole binary64 (* b r)))
#s(approx (* (sin b) r) #s(hole binary64 (* b (+ r (* -1/6 (* (pow b 2) r))))))
#s(approx (* (sin b) r) #s(hole binary64 (* b (+ r (* (pow b 2) (+ (* -1/6 r) (* 1/120 (* (pow b 2) r))))))))
#s(approx (* (sin b) r) #s(hole binary64 (* b (+ r (* (pow b 2) (+ (* -1/6 r) (* (pow b 2) (+ (* -1/5040 (* (pow b 2) r)) (* 1/120 r)))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (sin (+ a (* 1/2 (PI))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (cos (+ a (* 1/2 (PI))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (+ (cos (+ a (* 1/2 (PI)))) (* -1/2 (* b (sin (+ a (* 1/2 (PI)))))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (+ (cos (+ a (* 1/2 (PI)))) (* b (+ (* -1/2 (sin (+ a (* 1/2 (PI))))) (* -1/6 (* b (cos (+ a (* 1/2 (PI)))))))))))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (+ a (* 1/2 (PI)))))
#s(approx (neg b) #s(hole binary64 (* -1 b)))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (cos a)))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* b (- (* -1/2 (* b (cos a))) (sin a))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* b (- (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))) (sin a))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (cos a)))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* -1/2 (* (pow b 2) (cos a))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* 1/24 (* (pow b 2) (cos a))))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* (pow b 2) (+ (* -1/720 (* (pow b 2) (cos a))) (* 1/24 (cos a)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (sin a))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* -1/6 (* (pow b 2) (sin a)))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* (pow b 2) (+ (* -1/6 (sin a)) (* 1/120 (* (pow b 2) (sin a)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* (pow b 2) (+ (* -1/6 (sin a)) (* (pow b 2) (+ (* -1/5040 (* (pow b 2) (sin a))) (* 1/120 (sin a))))))))))
#s(approx (sin b) #s(hole binary64 (sin b)))
#s(approx (neg (sin b)) #s(hole binary64 (* -1 (sin b))))
#s(approx (cos b) #s(hole binary64 (cos b)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (/ (* (pow b 2) (* r (sin a))) (pow (cos a) 2))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* (pow b 2) (+ (/ r (* b (cos a))) (/ (* r (sin a)) (pow (cos a) 2))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (/ (* b (* r (sin a))) (pow (cos a) 2))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* b (+ (/ r (* b (cos a))) (/ (* r (sin a)) (pow (cos a) 2))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* b (+ (* a r) (/ r b)))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 b))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (* b (+ 1 (+ (* 1/2 (/ (PI) b)) (/ a b))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- a (* -1 b))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* -1 (* b (+ (* -1 (/ r (* b (cos a)))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* -1 (* b (+ (* -1 (* a r)) (* -1 (/ r b)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ a (* 1/2 (PI))) (* -1 b))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (- (+ a (* 1/2 (PI))) (* -1 b))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ a (* 1/2 (PI))) (* -1 b))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (sin (- (+ a (* 1/2 (PI))) (* -1 b)))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (* -1 (* b (- (* -1 (/ (+ a (* 1/2 (PI))) b)) 1)))))
Calls

9 calls:

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

rewrite763.0ms (13.2%)

Memory
-111.6MiB live, 249.1MiB allocated; 836ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010038366
010507189
158607189
087806831
Stop Event
iter-limit
node-limit
iter-limit
Counts
262 → 390
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
r
(/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(sin.f64 b)
b
(fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(sin.f64 a)
a
(neg.f64 (sin.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(cos.f64 a)
(cos.f64 b)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
(*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b)
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r))
(fma.f64 (*.f64 b r) a r)
(*.f64 b r)
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))
(sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))
(fma.f64 #s(literal 1/2 binary64) (PI.f64) a)
#s(literal 1/2 binary64)
(PI.f64)
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b))))
(*.f64 (sin.f64 b) r)
(sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))
(-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b))
(neg.f64 b)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
(-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
#s(approx (* (cos b) (cos a)) (cos.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (/ (* r (sin b)) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))))))
#s(approx r #s(hole binary64 r))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (+ a b)))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b (* r (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2)))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* r (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* r (+ 1 (* a b)))))
#s(approx (* b r) #s(hole binary64 (* b r)))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (+ a (+ b (* 1/2 (PI))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (/ (* r (sin b)) (sin (+ a (+ b (* 1/2 (PI))))))))
#s(approx (* (sin b) r) #s(hole binary64 (* r (sin b))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (- (* (cos a) (cos b)) (* (sin a) (sin b))))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* -1 (* b (* r (- (* -1 (/ (* b (sin a)) (pow (cos a) 2))) (/ 1 (cos a))))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* -1 (* r (- (* -1 (/ (* b (sin a)) (pow (cos a) 2))) (/ 1 (cos a)))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* -1 (* r (- (* -1 (* a b)) 1)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (cos b)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos b) (* a (+ (* -1 (sin b)) (* -1/2 (* a (cos b))))))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos b) (* a (+ (* -1 (sin b)) (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))))))))
#s(approx (sin a) #s(hole binary64 a))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* -1/6 (pow a 2))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* 1/120 (pow a 2)) 1/6))))))
#s(approx (sin a) #s(hole binary64 (* a (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/120 (* -1/5040 (pow a 2)))) 1/6))))))
#s(approx a #s(hole binary64 a))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (cos b)))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos b) (* -1/2 (* (pow a 2) (cos b))))))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* 1/24 (* (pow a 2) (cos b))))))))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* (pow a 2) (+ (* -1/720 (* (pow a 2) (cos b))) (* 1/24 (cos b)))))))))
#s(approx (cos a) #s(hole binary64 1))
#s(approx (cos a) #s(hole binary64 (+ 1 (* -1/2 (pow a 2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* 1/24 (pow a 2)) 1/2)))))
#s(approx (cos a) #s(hole binary64 (+ 1 (* (pow a 2) (- (* (pow a 2) (+ 1/24 (* -1/720 (pow a 2)))) 1/2)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b r)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (* (pow b 2) r)) (* b r))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (+ (* 1/2 (* a (* b r))) (* (pow b 2) r))) (* b r))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (+ (* a (+ (* a (+ (* 1/2 (* b r)) (* a (* b (- (* -1/6 (* b r)) (* -1 (* b r))))))) (* (pow b 2) r))) (* b r))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 r))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (* b r)))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (+ (* 1/2 (* a r)) (* b r))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ r (* a (+ (* a (- (* a (- (* -1/6 (* b r)) (* -1 (* b r)))) (* -1/2 r))) (* b r))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 r))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (+ r (* a (* b r)))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* -1 (/ (* a (* r (* (cos (+ b (* 1/2 (PI)))) (sin b)))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (+ b (* 1/2 (PI)))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))) (sin (+ b (* 1/2 (PI)))))) (+ (* -1/6 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (* 1/2 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))))))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (+ b (* 1/2 (PI)))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* -1 (/ (* a (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI))))))))) (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (+ b (* 1/2 (PI)))) (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI)))))))) (sin (+ b (* 1/2 (PI)))))) (+ (* -1/6 (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2))) (* 1/2 (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2))))))) (+ (* -1 (/ (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (sin b) (sin (+ b (* 1/2 (PI))))))))) (/ (* (cos (+ b (* 1/2 (PI)))) (sin b)) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (sin b) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (/ b (sin (* 1/2 (PI))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (+ (* -1 (/ (* a (* b (cos (* 1/2 (PI))))) (pow (sin (* 1/2 (PI))) 2))) (/ b (sin (* 1/2 (PI)))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* b (pow (cos (* 1/2 (PI))) 2)) (pow (sin (* 1/2 (PI))) 3))) (* -1/2 (/ b (sin (* 1/2 (PI)))))))) (/ (* b (cos (* 1/2 (PI)))) (pow (sin (* 1/2 (PI))) 2)))) (/ b (sin (* 1/2 (PI)))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (* 1/2 (PI))) (+ (* -1 (/ (* b (pow (cos (* 1/2 (PI))) 2)) (pow (sin (* 1/2 (PI))) 3))) (* -1/2 (/ b (sin (* 1/2 (PI))))))) (sin (* 1/2 (PI))))) (+ (* -1/6 (/ (* b (cos (* 1/2 (PI)))) (pow (sin (* 1/2 (PI))) 2))) (* 1/2 (/ (* b (cos (* 1/2 (PI)))) (pow (sin (* 1/2 (PI))) 2))))))) (+ (* -1 (/ (* b (pow (cos (* 1/2 (PI))) 2)) (pow (sin (* 1/2 (PI))) 3))) (* -1/2 (/ b (sin (* 1/2 (PI)))))))) (/ (* b (cos (* 1/2 (PI)))) (pow (sin (* 1/2 (PI))) 2)))) (/ b (sin (* 1/2 (PI)))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* a (cos (* 1/2 (PI)))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* a (+ (cos (* 1/2 (PI))) (* -1/2 (* a (sin (* 1/2 (PI))))))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* a (+ (cos (* 1/2 (PI))) (* a (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* a (cos (* 1/2 (PI))))))))))))
#s(approx (+ (* 1/2 (PI)) a) #s(hole binary64 (* 1/2 (PI))))
#s(approx (+ (* 1/2 (PI)) a) #s(hole binary64 (+ a (* 1/2 (PI)))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (+ (* -1 (/ (* a (* r (* (cos (+ b (* 1/2 (PI)))) (sin b)))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1 (/ (* (cos (+ b (* 1/2 (PI)))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI)))))))) (sin (+ b (* 1/2 (PI)))))) (+ (* -1/6 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))) (* 1/2 (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2))))))) (+ (* -1 (/ (* r (* (pow (cos (+ b (* 1/2 (PI)))) 2) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 3))) (* -1/2 (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))) (/ (* r (* (cos (+ b (* 1/2 (PI)))) (sin b))) (pow (sin (+ b (* 1/2 (PI)))) 2)))) (/ (* r (sin b)) (sin (+ b (* 1/2 (PI))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (sin (+ b (* 1/2 (PI))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (cos (+ b (* 1/2 (PI))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (+ (cos (+ b (* 1/2 (PI)))) (* -1/2 (* a (sin (+ b (* 1/2 (PI)))))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ b (* 1/2 (PI)))) (* a (+ (cos (+ b (* 1/2 (PI)))) (* a (+ (* -1/2 (sin (+ b (* 1/2 (PI))))) (* -1/6 (* a (cos (+ b (* 1/2 (PI)))))))))))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (+ b (* 1/2 (PI)))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (+ a (+ b (* 1/2 (PI))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* r (sin b)) (cos b))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (/ (* a (* r (pow (sin b) 2))) (pow (cos b) 2)) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (+ (* 1/6 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b))))) (cos b)))))) (+ (* -1 (/ (* r (pow (sin b) 3)) (pow (cos b) 3))) (* -1/2 (/ (* r (sin b)) (cos b)))))) (* -1 (/ (* r (pow (sin b) 2)) (pow (cos b) 2))))) (/ (* r (sin b)) (cos b)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ (sin b) (cos b))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (/ (sin b) (cos b)) (/ (* a (pow (sin b) 2)) (pow (cos b) 2)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (* a (- (* -1 (* a (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (+ (* a (- (* a (- (* -1 (* a (+ (* -1/2 (/ (pow (sin b) 2) (pow (cos b) 2))) (+ (* 1/6 (/ (pow (sin b) 2) (pow (cos b) 2))) (/ (* (sin b) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b))))) (cos b)))))) (+ (* -1 (/ (pow (sin b) 3) (pow (cos b) 3))) (* -1/2 (/ (sin b) (cos b)))))) (* -1 (/ (pow (sin b) 2) (pow (cos b) 2))))) (/ (sin b) (cos b)))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (cos b)))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* -1 (* a (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* a (- (* -1/2 (* a (cos b))) (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos b) (* a (- (* a (+ (* -1/2 (cos b)) (* 1/6 (* a (sin b))))) (sin b))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (cos b)))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* -1/2 (* (pow a 2) (cos b))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* 1/24 (* (pow a 2) (cos b))))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos b) (* (pow a 2) (+ (* -1/2 (cos b)) (* (pow a 2) (+ (* -1/720 (* (pow a 2) (cos b))) (* 1/24 (cos b)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (sin b))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* -1/6 (* (pow a 2) (sin b)))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* (pow a 2) (+ (* -1/6 (sin b)) (* 1/120 (* (pow a 2) (sin b)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* a (+ (sin b) (* (pow a 2) (+ (* -1/6 (sin b)) (* (pow a 2) (+ (* -1/5040 (* (pow a 2) (sin b))) (* 1/120 (sin b))))))))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (/ (sin b) (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b))))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (* -1 (* (sin a) (sin b))) (* (cos a) (cos b)))))
#s(approx (sin a) #s(hole binary64 (sin a)))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (* (cos a) (cos b))))
#s(approx (cos a) #s(hole binary64 (cos a)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2)))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* a (* b r))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* a (+ (* b r) (/ r a)))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (+ a (+ b (* 1/2 (PI))))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (/ b (sin (+ a (* 1/2 (PI)))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (sin (+ a (* 1/2 (PI))))))
#s(approx (+ (* 1/2 (PI)) a) #s(hole binary64 a))
#s(approx (+ (* 1/2 (PI)) a) #s(hole binary64 (* a (+ 1 (* 1/2 (/ (PI) a))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (sin (+ a (+ b (* 1/2 (PI)))))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 a))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (* a (+ 1 (+ (* 1/2 (/ (PI) a)) (/ b a))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ (sin b) (- (* (cos a) (cos b)) (* (sin a) (sin b))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (- (* (cos a) (cos b)) (* (sin a) (sin b)))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (* (cos a) (cos b))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* (sin a) (sin b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- b (* -1 a))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* -1 (* a (+ (* -1 (* b r)) (* -1 (/ r a)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ b (* 1/2 (PI))) (* -1 a))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (- (+ b (* 1/2 (PI))) (* -1 a))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) #s(hole binary64 (/ b (sin (- (* 1/2 (PI)) (* -1 a))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) #s(hole binary64 (sin (- (* 1/2 (PI)) (* -1 a)))))
#s(approx (+ (* 1/2 (PI)) a) #s(hole binary64 (* -1 (* a (- (* -1/2 (/ (PI) a)) 1)))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ b (* 1/2 (PI))) (* -1 a))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (sin (- (+ b (* 1/2 (PI))) (* -1 a)))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (* -1 (* a (- (* -1 (/ (+ b (* 1/2 (PI))) a)) 1)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (sin b) #s(hole binary64 b))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* -1/6 (pow b 2))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* 1/120 (pow b 2)) 1/6))))))
#s(approx (sin b) #s(hole binary64 (* b (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/120 (* -1/5040 (pow b 2)))) 1/6))))))
#s(approx b #s(hole binary64 b))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (cos a)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos a) (* b (+ (* -1 (sin a)) (* -1/2 (* b (cos a))))))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) #s(hole binary64 (+ (cos a) (* b (+ (* -1 (sin a)) (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))))))))
#s(approx (neg (sin b)) #s(hole binary64 (* -1 b)))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* 1/6 (pow b 2)) 1))))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* (pow b 2) (+ 1/6 (* -1/120 (pow b 2)))) 1))))
#s(approx (neg (sin b)) #s(hole binary64 (* b (- (* (pow b 2) (+ 1/6 (* (pow b 2) (- (* 1/5040 (pow b 2)) 1/120)))) 1))))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (cos a)))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos a) (* -1/2 (* (pow b 2) (cos a))))))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* 1/24 (* (pow b 2) (cos a))))))))
#s(approx (* (cos a) (cos b)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* (pow b 2) (+ (* -1/720 (* (pow b 2) (cos a))) (* 1/24 (cos a)))))))))
#s(approx (cos b) #s(hole binary64 1))
#s(approx (cos b) #s(hole binary64 (+ 1 (* -1/2 (pow b 2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* 1/24 (pow b 2)) 1/2)))))
#s(approx (cos b) #s(hole binary64 (+ 1 (* (pow b 2) (- (* (pow b 2) (+ 1/24 (* -1/720 (pow b 2)))) 1/2)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (/ r (cos a))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* b r) (sin (+ a (* 1/2 (PI)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* -1 (/ (* b (* r (cos (+ a (* 1/2 (PI)))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1/6 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (+ (* 1/2 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ (* (cos (+ a (* 1/2 (PI)))) (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (sin (+ a (* 1/2 (PI))))))))) (* -1/6 (/ r (sin (+ a (* 1/2 (PI))))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ b (sin (+ a (* 1/2 (PI)))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* -1 (/ (* b (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1/6 (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (+ (* 1/2 (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ (* (cos (+ a (* 1/2 (PI)))) (- (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (sin (+ a (* 1/2 (PI))))))))) (* 1/2 (/ 1 (sin (+ a (* 1/2 (PI))))))) (+ (* -1 (/ (pow (cos (+ a (* 1/2 (PI)))) 2) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* 1/6 (/ 1 (sin (+ a (* 1/2 (PI))))))))) (/ (cos (+ a (* 1/2 (PI)))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ 1 (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (/ (* b r) (sin (+ a (* 1/2 (PI)))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (* b (+ (* -1 (/ (* b (* r (cos (+ a (* 1/2 (PI)))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1/6 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (+ (* 1/2 (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2))) (/ (* (cos (+ a (* 1/2 (PI)))) (- (* -1/6 (/ r (sin (+ a (* 1/2 (PI)))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (sin (+ a (* 1/2 (PI))))))))) (* -1/6 (/ r (sin (+ a (* 1/2 (PI))))))) (+ (* -1 (/ (* r (pow (cos (+ a (* 1/2 (PI)))) 2)) (pow (sin (+ a (* 1/2 (PI)))) 3))) (* -1/2 (/ r (sin (+ a (* 1/2 (PI))))))))) (/ (* r (cos (+ a (* 1/2 (PI))))) (pow (sin (+ a (* 1/2 (PI)))) 2)))) (/ r (sin (+ a (* 1/2 (PI)))))))))
#s(approx (* (sin b) r) #s(hole binary64 (* b r)))
#s(approx (* (sin b) r) #s(hole binary64 (* b (+ r (* -1/6 (* (pow b 2) r))))))
#s(approx (* (sin b) r) #s(hole binary64 (* b (+ r (* (pow b 2) (+ (* -1/6 r) (* 1/120 (* (pow b 2) r))))))))
#s(approx (* (sin b) r) #s(hole binary64 (* b (+ r (* (pow b 2) (+ (* -1/6 r) (* (pow b 2) (+ (* -1/5040 (* (pow b 2) r)) (* 1/120 r)))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (sin (+ a (* 1/2 (PI))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (cos (+ a (* 1/2 (PI))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (+ (cos (+ a (* 1/2 (PI)))) (* -1/2 (* b (sin (+ a (* 1/2 (PI)))))))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (+ (sin (+ a (* 1/2 (PI)))) (* b (+ (cos (+ a (* 1/2 (PI)))) (* b (+ (* -1/2 (sin (+ a (* 1/2 (PI))))) (* -1/6 (* b (cos (+ a (* 1/2 (PI)))))))))))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (+ a (* 1/2 (PI)))))
#s(approx (neg b) #s(hole binary64 (* -1 b)))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (/ (* b r) (cos a))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (/ r (cos a)) (/ (* b (* r (sin a))) (pow (cos a) 2))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (* r (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a))))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* -1/6 (/ r (cos a))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (cos a))) (+ (* -1/2 (/ (* r (sin a)) (pow (cos a) 2))) (* 1/6 (/ (* r (sin a)) (pow (cos a) 2))))))) (* -1/6 (/ r (cos a)))) (+ (* -1 (/ (* r (pow (sin a) 2)) (pow (cos a) 3))) (* -1/2 (/ r (cos a)))))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))) (/ r (cos a))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (/ b (cos a))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (/ 1 (cos a)) (/ (* b (sin a)) (pow (cos a) 2))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (/ (sin b) (- (* (cos b) (cos a)) (* (sin b) (sin a)))) #s(hole binary64 (* b (+ (* b (- (* b (- (+ (* -1 (* b (+ (* -1 (/ (* (sin a) (- (* 1/2 (/ 1 (cos a))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (cos a))) (+ (* -1/2 (/ (sin a) (pow (cos a) 2))) (* 1/6 (/ (sin a) (pow (cos a) 2))))))) (* 1/2 (/ 1 (cos a)))) (+ (* -1 (/ (pow (sin a) 2) (pow (cos a) 3))) (* 1/6 (/ 1 (cos a)))))) (* -1 (/ (sin a) (pow (cos a) 2))))) (/ 1 (cos a))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (cos a)))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* -1 (* b (sin a))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* b (- (* -1/2 (* b (cos a))) (sin a))))))
#s(approx (- (* (cos b) (cos a)) (* (sin b) (sin a))) #s(hole binary64 (+ (cos a) (* b (- (* b (+ (* -1/2 (cos a)) (* 1/6 (* b (sin a))))) (sin a))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (cos a)))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* -1/2 (* (pow b 2) (cos a))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* 1/24 (* (pow b 2) (cos a))))))))
#s(approx (* (cos b) (cos a)) #s(hole binary64 (+ (cos a) (* (pow b 2) (+ (* -1/2 (cos a)) (* (pow b 2) (+ (* -1/720 (* (pow b 2) (cos a))) (* 1/24 (cos a)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (sin a))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* -1/6 (* (pow b 2) (sin a)))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* (pow b 2) (+ (* -1/6 (sin a)) (* 1/120 (* (pow b 2) (sin a)))))))))
#s(approx (* (sin b) (sin a)) #s(hole binary64 (* b (+ (sin a) (* (pow b 2) (+ (* -1/6 (sin a)) (* (pow b 2) (+ (* -1/5040 (* (pow b 2) (sin a))) (* 1/120 (sin a))))))))))
#s(approx (sin b) #s(hole binary64 (sin b)))
#s(approx (neg (sin b)) #s(hole binary64 (* -1 (sin b))))
#s(approx (cos b) #s(hole binary64 (cos b)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (/ (* (pow b 2) (* r (sin a))) (pow (cos a) 2))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) #s(hole binary64 (* (pow b 2) (+ (/ r (* b (cos a))) (/ (* r (sin a)) (pow (cos a) 2))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (/ (* b (* r (sin a))) (pow (cos a) 2))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* b (+ (/ r (* b (cos a))) (/ (* r (sin a)) (pow (cos a) 2))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* b (+ (* a r) (/ r b)))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 b))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (* b (+ 1 (+ (* 1/2 (/ (PI) b)) (/ a b))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(hole binary64 (/ (* r (sin b)) (cos (- a (* -1 b))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(hole binary64 (* -1 (* b (+ (* -1 (/ r (* b (cos a)))) (* -1 (/ (* r (sin a)) (pow (cos a) 2))))))))
#s(approx (+ (* (* b r) a) r) #s(hole binary64 (* -1 (* b (+ (* -1 (* a r)) (* -1 (/ r b)))))))
#s(approx (* r (/ (sin b) (sin (+ (+ a b) (/ (PI) 2))))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ a (* 1/2 (PI))) (* -1 b))))))
#s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) #s(hole binary64 (/ (sin b) (sin (- (+ a (* 1/2 (PI))) (* -1 b))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) #s(hole binary64 (/ (* r (sin b)) (sin (- (+ a (* 1/2 (PI))) (* -1 b))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) #s(hole binary64 (sin (- (+ a (* 1/2 (PI))) (* -1 b)))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) #s(hole binary64 (* -1 (* b (- (* -1 (/ (+ a (* 1/2 (PI))) b)) 1)))))
Outputs
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(*.f64 r (/.f64 (sin.f64 b) (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 (neg.f64 (sin.f64 b)) (neg.f64 (cos.f64 (+.f64 a b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(sin.f64 b)
b
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (cos.f64 (-.f64 a b)))
(/.f64 (-.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))) (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))) (sin.f64 (-.f64 a (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)) (fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) #s(literal 3 binary64))) (fma.f64 (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)) (-.f64 (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
(fma.f64 (sin.f64 (-.f64 a (neg.f64 b))) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(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 a)) (sin.f64 b) (*.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 #s(literal 1 binary64) (cos.f64 (+.f64 a b)) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 a b))))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 a) (sin.f64 b)) (*.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 (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 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 b) (cos.f64 a)))
(sin.f64 (+.f64 (neg.f64 (-.f64 a (neg.f64 b))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) a))
(sin.f64 (+.f64 (-.f64 a (neg.f64 b)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 a b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 (*.f64 #s(literal 1 binary64) b))) (*.f64 (sin.f64 a) (sin.f64 (*.f64 #s(literal 1 binary64) b))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)) (*.f64 (neg.f64 (cos.f64 a)) (cos.f64 b)))
(cos.f64 (neg.f64 (neg.f64 (-.f64 a (neg.f64 b)))))
(cos.f64 (neg.f64 (neg.f64 (+.f64 a b))))
(cos.f64 (-.f64 (neg.f64 b) a))
(cos.f64 (neg.f64 (-.f64 a (neg.f64 b))))
(cos.f64 (neg.f64 (+.f64 a b)))
(cos.f64 (-.f64 a (neg.f64 b)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (sin.f64 (-.f64 a (neg.f64 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 (sin.f64 (+.f64 a b)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 a b)) #s(literal 1 binary64)))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
(+.f64 (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))
(sin.f64 a)
a
(*.f64 #s(literal -1 binary64) (sin.f64 b))
(*.f64 (sin.f64 b) #s(literal -1 binary64))
(neg.f64 (sin.f64 b))
(fma.f64 (sin.f64 b) (cos.f64 (PI.f64)) (*.f64 (cos.f64 b) (sin.f64 (PI.f64))))
(sin.f64 (+.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 b (PI.f64)))
(sin.f64 (neg.f64 b))
(-.f64 (*.f64 (cos.f64 b) #s(literal 0 binary64)) (*.f64 (sin.f64 b) #s(literal 1 binary64)))
(cos.f64 (neg.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 (*.f64 (sin.f64 b) (cos.f64 (PI.f64))) (*.f64 (cos.f64 b) (sin.f64 (PI.f64))))
(*.f64 (cos.f64 b) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 a))) (sin.f64 (+.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 b))) (sin.f64 (+.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) b)) (sin.f64 (+.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) b))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) b (neg.f64 a))) (cos.f64 (-.f64 (neg.f64 b) (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) b a)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 b (neg.f64 a))) (cos.f64 (-.f64 b (neg.f64 a)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) a (neg.f64 b))) (cos.f64 (-.f64 (neg.f64 a) (neg.f64 b)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) a b)) (cos.f64 (-.f64 (neg.f64 a) b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a (neg.f64 b))) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 a b)) (cos.f64 (-.f64 a b))) #s(literal 2 binary64))
(fma.f64 (sin.f64 a) #s(literal 0 binary64) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(sin.f64 (fma.f64 #s(literal -1 binary64) a (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 a)))
(cos.f64 (neg.f64 a))
(cos.f64 a)
(+.f64 (*.f64 (sin.f64 a) #s(literal 0 binary64)) (*.f64 (cos.f64 a) #s(literal 1 binary64)))
(fma.f64 (sin.f64 b) #s(literal 0 binary64) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
(sin.f64 (fma.f64 #s(literal -1 binary64) b (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 b (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 b)))
(cos.f64 (neg.f64 b))
(cos.f64 b)
(+.f64 (*.f64 (sin.f64 b) #s(literal 0 binary64)) (*.f64 (cos.f64 b) #s(literal 1 binary64)))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
(*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b)
(*.f64 b #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))
(/.f64 (-.f64 (*.f64 r r) (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r))) (-.f64 r (*.f64 (*.f64 a b) r)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 a b) r) #s(literal 3 binary64)) (pow.f64 r #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r) (-.f64 (*.f64 r r) (*.f64 (*.f64 (*.f64 a b) r) r))))
(/.f64 (+.f64 (pow.f64 r #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 a b) r) #s(literal 3 binary64))) (fma.f64 r r (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r (*.f64 (*.f64 a b) r)))))
(fma.f64 (*.f64 a b) r r)
(fma.f64 (*.f64 b r) a r)
(fma.f64 a (*.f64 b r) r)
(fma.f64 b (*.f64 a r) r)
(-.f64 r (*.f64 (neg.f64 a) (*.f64 b r)))
(+.f64 (*.f64 (*.f64 a b) r) r)
(+.f64 r (*.f64 (*.f64 a b) r))
(*.f64 b r)
(*.f64 r b)
(*.f64 #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))) r)
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(/.f64 (neg.f64 b) (neg.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))
(fma.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (cos.f64 a) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 a)))
(fma.f64 (sin.f64 a) (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
(sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))
(-.f64 (*.f64 (sin.f64 a) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))))
(+.f64 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (cos.f64 a)) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 a)))
(+.f64 (*.f64 (sin.f64 a) (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 (cos.f64 a) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
(/.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (-.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 a a)) (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) a))
(/.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) #s(literal 3 binary64))) (fma.f64 a a (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
(/.f64 (fma.f64 (pow.f64 (PI.f64) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 a #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (*.f64 #s(literal 1/2 binary64) (PI.f64)) (-.f64 (*.f64 a a) (*.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) a))))
(fma.f64 #s(literal 1/2 binary64) (PI.f64) a)
(fma.f64 (PI.f64) #s(literal 1/2 binary64) a)
(-.f64 a (*.f64 #s(literal -1/2 binary64) (PI.f64)))
(+.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) a)
(+.f64 a (*.f64 #s(literal 1/2 binary64) (PI.f64)))
#s(literal 1/2 binary64)
(PI.f64)
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b))))))
(*.f64 (sin.f64 b) (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b))))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b))))))
(/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b)))))
(*.f64 (sin.f64 b) r)
(*.f64 r (sin.f64 b))
(fma.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (cos.f64 (*.f64 #s(literal 1 binary64) b)) (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (sin.f64 (*.f64 #s(literal 1 binary64) b))))
(fma.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (cos.f64 (+.f64 a b)) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 a (neg.f64 b)))))
(fma.f64 (sin.f64 a) (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (neg.f64 b))) (*.f64 (cos.f64 a) (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (neg.f64 b)))))
(sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b))))
(-.f64 (*.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (cos.f64 b)) (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (neg.f64 (sin.f64 b))))
(+.f64 (*.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (cos.f64 (*.f64 #s(literal 1 binary64) b))) (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (sin.f64 (*.f64 #s(literal 1 binary64) b))))
(+.f64 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (cos.f64 (+.f64 a b))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 a (neg.f64 b)))))
(+.f64 (*.f64 (sin.f64 a) (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (neg.f64 b)))) (*.f64 (cos.f64 a) (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (neg.f64 b)))))
(/.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (*.f64 (neg.f64 b) (neg.f64 b))) (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))
(/.f64 (-.f64 (pow.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) #s(literal 3 binary64)) (pow.f64 (neg.f64 b) #s(literal 3 binary64))) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (fma.f64 (neg.f64 b) (neg.f64 b) (*.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
(fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b)))
(fma.f64 (PI.f64) #s(literal 1/2 binary64) (-.f64 a (neg.f64 b)))
(-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b))
(+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (*.f64 #s(literal 1 binary64) b))
(+.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (-.f64 a (neg.f64 b)))
(+.f64 a (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) (neg.f64 b)))
(*.f64 #s(literal -1 binary64) b)
(*.f64 b #s(literal -1 binary64))
(neg.f64 b)
(*.f64 (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (neg.f64 (sin.f64 b)) (neg.f64 (-.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (-.f64 (*.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) #s(approx (* (cos a) (cos b)) (cos.f64 a))) (*.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (+.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (-.f64 (pow.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (fma.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) #s(approx (* (cos a) (cos b)) (cos.f64 a)) (fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))))
(-.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
#s(approx (* (cos a) (cos b)) (cos.f64 a))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(/.f64 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 a b))) #s(literal 2 binary64))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx r r)
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (*.f64 b r) (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64)))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) r))
#s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))
#s(approx (* b r) (*.f64 b r))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))))
#s(approx (* (sin b) r) (*.f64 (sin.f64 b) r))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (neg.f64 (*.f64 (*.f64 b r) (-.f64 (/.f64 (*.f64 (neg.f64 b) (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (neg.f64 (*.f64 (-.f64 (/.f64 (*.f64 (neg.f64 b) (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) r)))
#s(approx (+ (* (* b r) a) r) (neg.f64 (*.f64 (-.f64 (*.f64 (neg.f64 a) b) #s(literal 1 binary64)) r)))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 r (tan.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 r (tan.f64 b) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) a) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 (fma.f64 (neg.f64 a) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64)))))) a (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (tan.f64 b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (fma.f64 a (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (tan.f64 b)))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (fma.f64 (*.f64 #s(literal -1 binary64) (-.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) a) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal 1/6 binary64) (/.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) a (*.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (cos.f64 b))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (neg.f64 a) (sin.f64 b) (cos.f64 b)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) a) (cos.f64 b) (neg.f64 (sin.f64 b))) a (cos.f64 b)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 b) a) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) a (neg.f64 (sin.f64 b))) a (cos.f64 b)))
#s(approx (sin a) a)
#s(approx (sin a) (*.f64 (fma.f64 (*.f64 a a) #s(literal -1/6 binary64) #s(literal 1 binary64)) a))
#s(approx (sin a) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 a a)) #s(literal 1/6 binary64)) (*.f64 a a) #s(literal 1 binary64)) a))
#s(approx (sin a) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 a a) #s(literal 1/120 binary64)) (*.f64 a a)) #s(literal 1/6 binary64)) (*.f64 a a) #s(literal 1 binary64)) a))
#s(approx a a)
#s(approx (* (cos a) (cos b)) (cos.f64 b))
#s(approx (* (cos a) (cos b)) (fma.f64 (*.f64 (*.f64 a a) #s(literal -1/2 binary64)) (cos.f64 b) (cos.f64 b)))
#s(approx (* (cos a) (cos b)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 a a)) (cos.f64 b) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) (*.f64 a a) (cos.f64 b)))
#s(approx (* (cos a) (cos b)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 a a)) (cos.f64 b) (*.f64 #s(literal 1/24 binary64) (cos.f64 b))) (*.f64 a a) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) (*.f64 a a) (cos.f64 b)))
#s(approx (cos a) #s(literal 1 binary64))
#s(approx (cos a) (fma.f64 (*.f64 a a) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos a) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 a a)) #s(literal 1/2 binary64)) (*.f64 a a) #s(literal 1 binary64)))
#s(approx (cos a) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 a a) #s(literal 1/24 binary64)) (*.f64 a a)) #s(literal 1/2 binary64)) (*.f64 a a) #s(literal 1 binary64)))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 r (tan.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 r (tan.f64 b) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) a) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 (fma.f64 (neg.f64 a) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64)))))) a (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 b r))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 a b) r) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r)))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 b r) #s(literal 5/6 binary64)) b) a (*.f64 (*.f64 b r) #s(literal 1/2 binary64))) a (*.f64 (*.f64 b b) r)) a (*.f64 b r)))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) r)
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b r) #s(literal 5/6 binary64)) a (*.f64 #s(literal 1/2 binary64) r)) a (*.f64 b r)) a r))
#s(approx (+ (* (* b r) a) r) r)
#s(approx (+ (* (* b r) a) r) (fma.f64 (*.f64 b r) a r))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) (neg.f64 (/.f64 (*.f64 (*.f64 a r) (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b))) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (*.f64 r (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64))))))) (*.f64 r (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))))) a (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (*.f64 r (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)))) #s(literal 1/3 binary64) (neg.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (/.f64 (fma.f64 (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (*.f64 r (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))))) (fma.f64 (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (*.f64 r (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64))))))) a) (*.f64 r (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))))) a (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (fma.f64 (*.f64 a (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)))) #s(literal -1 binary64) (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64)))))) (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)))) a (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))) #s(literal 1/3 binary64) (neg.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (/.f64 (fma.f64 (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))))) (fma.f64 (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64)))))) a) (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)))) a (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) (/.f64 b (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) (fma.f64 (/.f64 (*.f64 (*.f64 a b) (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (pow.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal 2 binary64))) #s(literal -1 binary64) (/.f64 b (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 b (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal 2 binary64)) b) (pow.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal 3 binary64)))))) (*.f64 b (/.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (pow.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal 2 binary64))))) a (/.f64 b (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (*.f64 b (/.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (pow.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal 2 binary64)))) #s(literal 1/3 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (/.f64 (fma.f64 (/.f64 b (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal 2 binary64)) b) (pow.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal 3 binary64))))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))) (fma.f64 (/.f64 b (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal 2 binary64)) b) (pow.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal 3 binary64)))))) a) (*.f64 b (/.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (pow.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal 2 binary64))))) a (/.f64 b (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (sin (+ (* 1/2 (PI)) a)) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))
#s(approx (sin (+ (* 1/2 (PI)) a)) (fma.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) a (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (sin (+ (* 1/2 (PI)) a)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) a) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) a (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (sin (+ (* 1/2 (PI)) a)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) a) (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) #s(literal -1/2 binary64))) a (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) a (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (+ (* 1/2 (PI)) a) (*.f64 #s(literal 1/2 binary64) (PI.f64)))
#s(approx (+ (* 1/2 (PI)) a) (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (fma.f64 r (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) (neg.f64 (/.f64 (*.f64 (*.f64 a r) (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b))) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (*.f64 r (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64))))))) (*.f64 r (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))))) a (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (*.f64 r (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)))) #s(literal 1/3 binary64) (neg.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (/.f64 (fma.f64 (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (*.f64 r (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))))) (fma.f64 (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) #s(literal -1/2 binary64) (neg.f64 (*.f64 r (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 3 binary64))))))) a) (*.f64 r (/.f64 (*.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (sin.f64 b)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal 2 binary64))))) a (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (fma.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) a (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) a) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) a (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) a) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) (*.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)) #s(literal -1/2 binary64))) a (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))) a (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) (fma.f64 #s(literal 1/2 binary64) (PI.f64) b))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 r (tan.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 r (tan.f64 b) (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) a) (pow.f64 (cos.f64 b) #s(literal 2 binary64)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 (fma.f64 (neg.f64 a) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 r (tan.f64 b)) (neg.f64 (*.f64 r (pow.f64 (tan.f64 b) #s(literal 3 binary64)))))) a (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (*.f64 r (tan.f64 b))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (tan.f64 b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (fma.f64 a (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) (tan.f64 b)))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (fma.f64 (*.f64 #s(literal -1 binary64) (-.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) a) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 a) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))) #s(literal 1/6 binary64) (/.f64 (*.f64 (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64)))) (sin.f64 b)) (cos.f64 b))))) (fma.f64 (tan.f64 b) #s(literal -1/2 binary64) (neg.f64 (pow.f64 (tan.f64 b) #s(literal 3 binary64))))) a (*.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 b) #s(literal 2 binary64)) (pow.f64 (cos.f64 b) #s(literal 2 binary64))))) a (tan.f64 b)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (cos.f64 b))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (neg.f64 a) (sin.f64 b) (cos.f64 b)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 b) a) #s(literal -1/2 binary64)) (sin.f64 b)) a (cos.f64 b)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 b) a) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) a) (sin.f64 b)) a (cos.f64 b)))
#s(approx (* (cos a) (cos b)) (cos.f64 b))
#s(approx (* (cos a) (cos b)) (fma.f64 (*.f64 (*.f64 a a) #s(literal -1/2 binary64)) (cos.f64 b) (cos.f64 b)))
#s(approx (* (cos a) (cos b)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 a a)) (cos.f64 b) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) (*.f64 a a) (cos.f64 b)))
#s(approx (* (cos a) (cos b)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 a a)) (cos.f64 b) (*.f64 #s(literal 1/24 binary64) (cos.f64 b))) (*.f64 a a) (*.f64 #s(literal -1/2 binary64) (cos.f64 b))) (*.f64 a a) (cos.f64 b)))
#s(approx (* (sin b) (sin a)) (*.f64 (sin.f64 b) a))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (*.f64 (*.f64 a a) (sin.f64 b)) #s(literal -1/6 binary64) (sin.f64 b)) a))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 a a) (sin.f64 b)) #s(literal 1/120 binary64) (*.f64 #s(literal -1/6 binary64) (sin.f64 b))) (*.f64 a a) (sin.f64 b)) a))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 a a) (sin.f64 b)) #s(literal -1/5040 binary64) (*.f64 #s(literal 1/120 binary64) (sin.f64 b))) (*.f64 a a) (*.f64 #s(literal -1/6 binary64) (sin.f64 b))) (*.f64 a a) (sin.f64 b)) a))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (cos.f64 (+.f64 a b)))
#s(approx (sin a) (sin.f64 a))
#s(approx (* (cos a) (cos b)) (*.f64 (cos.f64 b) (cos.f64 a)))
#s(approx (cos a) (cos.f64 a))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))) b))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))))
#s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))
#s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 (sin.f64 b) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (sin (+ (* 1/2 (PI)) a)) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))
#s(approx (+ (* 1/2 (PI)) a) a)
#s(approx (+ (* 1/2 (PI)) a) (*.f64 (fma.f64 (/.f64 (PI.f64) a) #s(literal 1/2 binary64) #s(literal 1 binary64)) a))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a)))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) a)
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) (*.f64 (+.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a) #s(literal 1 binary64)) a))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (cos.f64 (+.f64 a b)))
#s(approx (* (cos a) (cos b)) (*.f64 (cos.f64 b) (cos.f64 a)))
#s(approx (* (sin b) (sin a)) (*.f64 (sin.f64 a) (sin.f64 b)))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (neg.f64 a)))))
#s(approx (+ (* (* b r) a) r) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (fma.f64 b r (/.f64 r a)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) (neg.f64 a)))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 (sin.f64 b) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) (neg.f64 a)))))
#s(approx (/ b (sin (+ (* 1/2 (PI)) a))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (*.f64 #s(literal 1 binary64) a)))))
#s(approx (sin (+ (* 1/2 (PI)) a)) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (*.f64 #s(literal 1 binary64) a))))
#s(approx (+ (* 1/2 (PI)) a) (*.f64 (neg.f64 a) (-.f64 (*.f64 (/.f64 (PI.f64) a) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) (neg.f64 a)))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) (neg.f64 a))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) (*.f64 (neg.f64 a) (-.f64 (neg.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a)) #s(literal 1 binary64))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) b) (neg.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) b) (/.f64 (neg.f64 (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a))))) b (*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (sin b) b)
#s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))
#s(approx (sin b) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 b b) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx (sin b) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 b b)) #s(literal 1/6 binary64)) (*.f64 b b) #s(literal 1 binary64)) b))
#s(approx b b)
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (cos.f64 a))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) b) (cos.f64 a) (neg.f64 (sin.f64 a))) b (cos.f64 a)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 a) b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b (neg.f64 (sin.f64 a))) b (cos.f64 a)))
#s(approx (neg (sin b)) (neg.f64 b))
#s(approx (neg (sin b)) (*.f64 (-.f64 (*.f64 (*.f64 b b) #s(literal 1/6 binary64)) #s(literal 1 binary64)) b))
#s(approx (neg (sin b)) (*.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 b b) #s(literal 1/6 binary64)) (*.f64 b b)) #s(literal 1 binary64)) b))
#s(approx (neg (sin b)) (*.f64 (-.f64 (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 b b)) #s(literal 1/120 binary64)) (*.f64 b b) #s(literal 1/6 binary64)) (*.f64 b b)) #s(literal 1 binary64)) b))
#s(approx (* (cos a) (cos b)) (cos.f64 a))
#s(approx (* (cos a) (cos b)) (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/2 binary64)) (cos.f64 a) (cos.f64 a)))
#s(approx (* (cos a) (cos b)) (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal 1/24 binary64)) (cos.f64 a) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) (*.f64 b b) (cos.f64 a)))
#s(approx (* (cos a) (cos b)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/720 binary64)) (cos.f64 a) (*.f64 #s(literal 1/24 binary64) (cos.f64 a))) (*.f64 b b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) (*.f64 b b) (cos.f64 a)))
#s(approx (cos b) #s(literal 1 binary64))
#s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos b) (fma.f64 (-.f64 (*.f64 (*.f64 b b) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 b b) #s(literal 1 binary64)))
#s(approx (cos b) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 b b)) #s(literal 1/2 binary64)) (*.f64 b b) #s(literal 1 binary64)))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) b) (neg.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 r (cos.f64 a)))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 b r) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))) #s(literal -1 binary64) (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 (*.f64 #s(literal -1/6 binary64) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) r) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64)))))) b) (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))))) b (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))) b))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (neg.f64 b) (fma.f64 (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) #s(literal -1/6 binary64) (fma.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (/.f64 (-.f64 (/.f64 (*.f64 #s(literal -1/6 binary64) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) r) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (*.f64 (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))) (-.f64 (/.f64 (*.f64 #s(literal -1/6 binary64) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) r) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64))))))) b) (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))))) b (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))) b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (*.f64 (fma.f64 (*.f64 b (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) #s(literal -1 binary64) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))) b) (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) b (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))) #s(literal -1/6 binary64) (fma.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (*.f64 (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))) (-.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))) b) (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) b (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal -1 binary64))) b))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 b r) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))) #s(literal -1 binary64) (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))) b))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 (*.f64 #s(literal -1/6 binary64) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) r) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64)))))) b) (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))))) b (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))) b))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (neg.f64 b) (fma.f64 (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) #s(literal -1/6 binary64) (fma.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (/.f64 (-.f64 (/.f64 (*.f64 #s(literal -1/6 binary64) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) r) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64)))))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (*.f64 (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))) (-.f64 (/.f64 (*.f64 #s(literal -1/6 binary64) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) (fma.f64 (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64)) r) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 3 binary64))))))) b) (*.f64 r (/.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (pow.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal 2 binary64))))) b (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))) b))
#s(approx (* (sin b) r) (*.f64 b r))
#s(approx (* (sin b) r) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b))
#s(approx (* (sin b) r) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal 1/120 binary64)) r (*.f64 #s(literal -1/6 binary64) r)) (*.f64 b b) r) b))
#s(approx (* (sin b) r) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/5040 binary64)) r (*.f64 #s(literal 1/120 binary64) r)) (*.f64 b b) (*.f64 #s(literal -1/6 binary64) r)) (*.f64 b b) r) b))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (fma.f64 (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) b) (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) (*.f64 (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)) #s(literal -1/2 binary64))) b (cos.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))) b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))
#s(approx (neg b) (neg.f64 b))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) b) (neg.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 #s(literal -1/2 binary64) (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64)))))) b (/.f64 r (cos.f64 a))) b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a)))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (*.f64 (fma.f64 (-.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) b) (/.f64 (neg.f64 (sin.f64 a)) (pow.f64 (cos.f64 a) #s(literal 2 binary64)))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a)))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (/.f64 #s(literal 1/2 binary64) (cos.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) (pow.f64 (cos.f64 a) #s(literal 3 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1/6 binary64) (cos.f64 a))))) b (*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (cos.f64 a))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a)))
#s(approx (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 a) b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b) (sin.f64 a)) b (cos.f64 a)))
#s(approx (* (cos a) (cos b)) (cos.f64 a))
#s(approx (* (cos a) (cos b)) (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/2 binary64)) (cos.f64 a) (cos.f64 a)))
#s(approx (* (cos a) (cos b)) (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal 1/24 binary64)) (cos.f64 a) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) (*.f64 b b) (cos.f64 a)))
#s(approx (* (cos a) (cos b)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/720 binary64)) (cos.f64 a) (*.f64 #s(literal 1/24 binary64) (cos.f64 a))) (*.f64 b b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) (*.f64 b b) (cos.f64 a)))
#s(approx (* (sin b) (sin a)) (*.f64 (sin.f64 a) b))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) (sin.f64 a)) #s(literal -1/6 binary64) (sin.f64 a)) b))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) (sin.f64 a)) #s(literal 1/120 binary64) (*.f64 #s(literal -1/6 binary64) (sin.f64 a))) (*.f64 b b) (sin.f64 a)) b))
#s(approx (* (sin b) (sin a)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 b b) (sin.f64 a)) #s(literal -1/5040 binary64) (*.f64 #s(literal 1/120 binary64) (sin.f64 a))) (*.f64 b b) (*.f64 #s(literal -1/6 binary64) (sin.f64 a))) (*.f64 b b) (sin.f64 a)) b))
#s(approx (sin b) (sin.f64 b))
#s(approx (neg (sin b)) (neg.f64 (sin.f64 b)))
#s(approx (cos b) (cos.f64 b))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (*.f64 b b) (*.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))))))
#s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))) (*.f64 b b)))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (*.f64 (*.f64 (sin.f64 a) r) b) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (*.f64 (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))) b))
#s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) b)
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) (*.f64 (+.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) b) #s(literal 1 binary64)) b))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
#s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))))))
#s(approx (+ (* (* b r) a) r) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a r (/.f64 r b)))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b))))))
#s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 (sin.f64 b) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b))))))
#s(approx (/ (* (sin b) r) (sin (- (+ (* 1/2 (PI)) a) (neg b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b))))))
#s(approx (sin (- (+ (* 1/2 (PI)) a) (neg b))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b)))))
#s(approx (- (+ (* 1/2 (PI)) a) (neg b)) (*.f64 (neg.f64 b) (-.f64 (neg.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) b)) #s(literal 1 binary64))))

eval58.0ms (1%)

Memory
12.5MiB live, 109.3MiB allocated; 8ms collecting garbage
Compiler

Compiled 14 220 to 2 044 computations (85.6% saved)

prune74.0ms (1.3%)

Memory
-26.1MiB live, 117.6MiB allocated; 12ms collecting garbage
Pruning

68 alts after pruning (61 fresh and 7 done)

PrunedKeptTotal
New42022442
Fresh83947
Picked235
Done044
Total43068498
Accuracy
99.8%
Counts
498 → 68
Alt Table
Click to see full alt table
StatusAccuracyProgram
57.5%
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))
77.2%
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
62.3%
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))))
51.7%
(/.f64 (*.f64 r #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))))) (cos.f64 (+.f64 a b)))
52.4%
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) #s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 a) b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b) (sin.f64 a)) b (cos.f64 a))))
51.6%
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) #s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a))))
24.8%
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 #s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b))) b))) (cos.f64 (+.f64 a b)))
51.9%
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
51.7%
(/.f64 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
99.4%
(*.f64 r (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
40.9%
(*.f64 r (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 b) #s(literal -1 binary64))) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
99.1%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (fma.f64 (sin.f64 b) (cos.f64 (PI.f64)) (*.f64 (cos.f64 b) (sin.f64 (PI.f64)))) (*.f64 (cos.f64 a) (cos.f64 b)))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
52.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
57.5%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) #s(approx (cos b) #s(literal 1 binary64))))))
61.8%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) #s(approx (* (cos a) (cos b)) (cos.f64 b)))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64)))) (sin.f64 a)))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
99.3%
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)) (fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))))))
99.4%
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 a) #s(literal -1 binary64)))))))
99.5%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
41.1%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (sin.f64 (fma.f64 #s(literal -1 binary64) a (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (sin.f64 b) (sin.f64 a)))))
40.1%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (sin.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (sin.f64 b) (sin.f64 a)))))
39.3%
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) #s(approx (cos a) #s(literal 1 binary64))) (*.f64 (sin.f64 b) (sin.f64 a)))))
41.2%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))))
39.9%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
39.5%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (*.f64 (+.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a) #s(literal 1 binary64)) a)))))
8.0%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) b))))
12.7%
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) a))))
60.4%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 #s(approx (+ (/ b a) 1) (fma.f64 (pow.f64 a #s(literal -1 binary64)) b #s(literal 1 binary64))) a)))))
45.5%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 #s(approx (+ (/ b a) 1) (/.f64 b a)) a)))))
60.5%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) b)))))
56.0%
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) a)))))
36.1%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
53.5%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (*.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 a) (/.f64 (cos.f64 a) b)) b)))))
39.6%
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
55.5%
(*.f64 r (/.f64 #s(approx (sin b) b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
52.0%
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
11.3%
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
57.9%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (pow.f64 (tan.f64 b) #s(literal 2 binary64)) (tan.f64 b))))
29.5%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 (+.f64 (tan.f64 b) (tan.f64 (PI.f64))) (-.f64 #s(literal 1 binary64) (*.f64 (tan.f64 b) (tan.f64 (PI.f64)))))))
29.7%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
29.7%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
60.4%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
35.2%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
35.7%
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
36.7%
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
52.1%
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 r (cos.f64 a))))
41.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
18.6%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 #s(approx (+ (* 1/2 (PI)) a) a) (neg.f64 b)))))
16.3%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 #s(approx (- (+ (* 1/2 (PI)) a) (neg b)) a))))
51.6%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) a))))) (/.f64 r (cos.f64 a))) b))
41.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (sin.f64 b) (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b)))))))
30.5%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
34.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
34.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
25.1%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
26.9%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
26.3%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
34.1%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
14.2%
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
33.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
34.3%
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
33.0%
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))) (*.f64 b b))))
51.6%
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (*.f64 b r) (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))))))
Compiler

Compiled 4 316 to 1 783 computations (58.7% saved)

regimes149.0ms (2.6%)

Memory
28.3MiB live, 215.7MiB allocated; 19ms collecting garbage
Counts
103 → 1
Calls
Call 1
Inputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 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 (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
(*.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 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 r #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 r (/.f64 #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 #s(approx (- (+ (* 1/2 (PI)) a) (neg b)) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) a))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 #s(approx (+ (* 1/2 (PI)) a) a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
(*.f64 r (/.f64 #s(approx (sin b) b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (sin.f64 b) (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 #s(approx (+ (/ b a) 1) (/.f64 b a)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 #s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b))) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 #s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b))) b))) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (*.f64 (+.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a) #s(literal 1 binary64)) a)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (pow.f64 (tan.f64 b) #s(literal 2 binary64)) (tan.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) #s(approx (cos a) #s(literal 1 binary64))) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 #s(approx (+ (/ b a) 1) (fma.f64 (pow.f64 a #s(literal -1 binary64)) b #s(literal 1 binary64))) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (*.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 a) (/.f64 (cos.f64 a) b)) b)))))
(*.f64 r (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) a))))) (/.f64 r (cos.f64 a))) b))
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) #s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) #s(approx (* (cos a) (cos b)) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 (+.f64 (tan.f64 b) (tan.f64 (PI.f64))) (-.f64 #s(literal 1 binary64) (*.f64 (tan.f64 b) (tan.f64 (PI.f64)))))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 #s(approx (sin b) b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) #s(approx (cos b) #s(literal 1 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (sin.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (sin.f64 b) (sin.f64 a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (sin.f64 (fma.f64 #s(literal -1 binary64) a (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (sin.f64 b) (sin.f64 a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))) (*.f64 b b))))
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) #s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 a) b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b) (sin.f64 a)) b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (*.f64 b r) (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b)))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b)))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.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 a) (neg.f64 (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 b) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 a) #s(literal -1 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 a) #s(literal -1 binary64)))) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64)))) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 b) #s(literal -1 binary64))) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 r (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (exp.f64 (*.f64 (log.f64 (sin.f64 b)) #s(literal 1 binary64))) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (fma.f64 (sin.f64 b) (cos.f64 (PI.f64)) (*.f64 (cos.f64 b) (sin.f64 (PI.f64)))) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (fma.f64 (sin.f64 b) (cos.f64 (PI.f64)) (*.f64 (cos.f64 b) (sin.f64 (PI.f64)))) (*.f64 (cos.f64 a) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))))
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)) (fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))))
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 a) (sin.f64 b)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)) (fma.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 b) (fma.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) #s(literal -1/3 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64)))))) (sin.f64 a)) (cos.f64 a)))) (-.f64 (*.f64 #s(literal -1/6 binary64) (/.f64 r (cos.f64 a))) (fma.f64 (/.f64 r (cos.f64 a)) #s(literal -1/2 binary64) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) #s(literal 2 binary64)) r) (pow.f64 (cos.f64 a) #s(literal 3 binary64))))))) b (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))))) b (/.f64 r (cos.f64 a))) b))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
Calls

5 calls:

37.0ms
b
28.0ms
a
28.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
27.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
24.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 19 to 24 computations (-26.3% saved)

regimes129.0ms (2.2%)

Memory
-32.7MiB live, 104.5MiB allocated; 8ms collecting garbage
Counts
87 → 1
Calls
Call 1
Inputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 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 (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
(*.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 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 r #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 r (/.f64 #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 #s(approx (- (+ (* 1/2 (PI)) a) (neg b)) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) a))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 #s(approx (+ (* 1/2 (PI)) a) a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
(*.f64 r (/.f64 #s(approx (sin b) b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (sin.f64 b) (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 #s(approx (+ (/ b a) 1) (/.f64 b a)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 #s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b))) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 #s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b))) b))) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (*.f64 (+.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a) #s(literal 1 binary64)) a)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (pow.f64 (tan.f64 b) #s(literal 2 binary64)) (tan.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) #s(approx (cos a) #s(literal 1 binary64))) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 #s(approx (+ (/ b a) 1) (fma.f64 (pow.f64 a #s(literal -1 binary64)) b #s(literal 1 binary64))) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (*.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 a) (/.f64 (cos.f64 a) b)) b)))))
(*.f64 r (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) a))))) (/.f64 r (cos.f64 a))) b))
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) #s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) #s(approx (* (cos a) (cos b)) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 (+.f64 (tan.f64 b) (tan.f64 (PI.f64))) (-.f64 #s(literal 1 binary64) (*.f64 (tan.f64 b) (tan.f64 (PI.f64)))))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 #s(approx (sin b) b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) #s(approx (cos b) #s(literal 1 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (sin.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (sin.f64 b) (sin.f64 a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (sin.f64 (fma.f64 #s(literal -1 binary64) a (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (sin.f64 b) (sin.f64 a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))) (*.f64 b b))))
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) #s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 a) b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b) (sin.f64 a)) b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (*.f64 b r) (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b)))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b)))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
Calls

5 calls:

29.0ms
a
22.0ms
b
21.0ms
r
21.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
20.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
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%1a
99.5%1r
99.5%1b
Compiler

Compiled 19 to 24 computations (-26.3% saved)

regimes145.0ms (2.5%)

Memory
7.9MiB live, 148.6MiB allocated; 14ms collecting garbage
Counts
86 → 1
Calls
Call 1
Inputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 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 (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
(*.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 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 r #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 r (/.f64 #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 #s(approx (- (+ (* 1/2 (PI)) a) (neg b)) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) a))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 #s(approx (+ (* 1/2 (PI)) a) a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (fma.f64 #s(literal 1/2 binary64) (PI.f64) b)))))
(*.f64 r (/.f64 #s(approx (sin b) b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (sin.f64 b) (/.f64 r (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (-.f64 a (neg.f64 b)))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 #s(approx (+ (/ b a) 1) (/.f64 b a)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 (+.f64 (neg.f64 (+.f64 a b)) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 #s(approx (+ a b) (*.f64 (+.f64 (/.f64 b a) #s(literal 1 binary64)) a))))
(*.f64 r (/.f64 #s(approx (sin b) (*.f64 #s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b))) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 #s(approx (+ (* (* b b) -1/6) 1) (*.f64 (-.f64 (pow.f64 b #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 b b))) b))) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) (*.f64 (+.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) b) a) #s(literal 1 binary64)) a)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (fma.f64 a (pow.f64 (tan.f64 b) #s(literal 2 binary64)) (tan.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (neg.f64 b) (sin.f64 a) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) #s(approx (cos a) #s(literal 1 binary64))) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) (*.f64 #s(approx (+ (/ b a) 1) (fma.f64 (pow.f64 a #s(literal -1 binary64)) b #s(literal 1 binary64))) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (*.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 a) (/.f64 (cos.f64 a) b)) b)))))
(*.f64 r (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 b) #s(literal -1 binary64))) (sin.f64 (+.f64 (+.f64 a b) (/.f64 (PI.f64) #s(literal 2 binary64))))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) a))))) (/.f64 r (cos.f64 a))) b))
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) #s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) #s(approx (* (cos a) (cos b)) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 #s(approx (* (cos a) (cos b)) (cos.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (/.f64 (+.f64 (tan.f64 b) (tan.f64 (PI.f64))) (-.f64 #s(literal 1 binary64) (*.f64 (tan.f64 b) (tan.f64 (PI.f64)))))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 #s(approx (sin b) b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) #s(approx (cos b) #s(literal 1 binary64))))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 a) b) #s(literal -1/2 binary64)) (sin.f64 a)) b (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (sin.f64 (+.f64 a (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (sin.f64 b) (sin.f64 a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 (fma.f64 b (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (cos.f64 a))) b))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) #s(approx (cos b) (fma.f64 (*.f64 b b) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 #s(approx (* (cos b) (cos a)) (sin.f64 (fma.f64 #s(literal -1 binary64) a (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (sin.f64 b) (sin.f64 a)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (fma.f64 (sin.f64 a) (/.f64 r (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (/.f64 r (*.f64 (cos.f64 a) b))) (*.f64 b b))))
(/.f64 (*.f64 r #s(approx (sin b) (*.f64 (fma.f64 (*.f64 b b) #s(literal -1/6 binary64) #s(literal 1 binary64)) b))) #s(approx (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 a) b) (*.f64 #s(literal -1/2 binary64) (cos.f64 a))) b) (sin.f64 a)) b (cos.f64 a))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (*.f64 (*.f64 b r) (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b)))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (*.f64 (fma.f64 b (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) #s(literal 2 binary64))) (pow.f64 (cos.f64 a) #s(literal -1 binary64))) b)))
Outputs
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
Calls

5 calls:

37.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
34.0ms
a
30.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
20.0ms
r
20.0ms
b
Results
AccuracySegmentsBranch
77.2%1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
77.2%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
77.2%1r
77.2%1a
77.2%1b
Compiler

Compiled 19 to 24 computations (-26.3% saved)

regimes84.0ms (1.4%)

Memory
11.9MiB live, 58.0MiB allocated; 2ms collecting garbage
Counts
44 → 1
Calls
Call 1
Inputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 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 (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
(*.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 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 r #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 r (/.f64 #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 #s(approx (- (+ (* 1/2 (PI)) a) (neg b)) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) a))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Calls

5 calls:

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

Compiled 19 to 24 computations (-26.3% saved)

regimes84.0ms (1.5%)

Memory
17.8MiB live, 72.2MiB allocated; 31ms collecting garbage
Counts
43 → 3
Calls
Call 1
Inputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 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 (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
(*.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 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 r #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 r (/.f64 #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 #s(approx (- (+ (* 1/2 (PI)) a) (neg b)) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) #s(approx (* (+ (/ b a) 1) a) b)))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) a))))
(*.f64 r (/.f64 (sin.f64 b) (sin.f64 #s(approx (+ (+ a b) (/ (PI) 2)) b))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
Calls

5 calls:

39.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
11.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
11.0ms
b
11.0ms
a
10.0ms
r
Results
AccuracySegmentsBranch
60.5%1r
77.0%3(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
65.7%3(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
77.1%3a
77.0%3b
Compiler

Compiled 19 to 24 computations (-26.3% saved)

regimes15.0ms (0.3%)

Memory
-23.7MiB live, 22.0MiB allocated; 6ms collecting garbage
Counts
38 → 3
Calls
Call 1
Inputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 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 (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
(*.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 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 r #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 r (/.f64 #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 #s(approx (- (+ (* 1/2 (PI)) a) (neg b)) a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 #s(approx (+ a b) a))))
Calls

1 calls:

13.0ms
a
Results
AccuracySegmentsBranch
77.1%3a
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes33.0ms (0.6%)

Memory
27.1MiB live, 70.6MiB allocated; 5ms collecting garbage
Counts
37 → 3
Calls
Call 1
Inputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 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 (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
(*.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 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 r #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 r (/.f64 #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 (sin.f64 b) r) (sin.f64 #s(approx (- (+ (* 1/2 (PI)) a) (neg b)) a))))
Outputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(/.f64 (*.f64 r #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64)))))) (cos.f64 (+.f64 a b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
Calls

3 calls:

13.0ms
b
9.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
9.0ms
a
Results
AccuracySegmentsBranch
77.0%3(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
77.0%3b
75.4%3a
Compiler

Compiled 9 to 13 computations (-44.4% saved)

regimes22.0ms (0.4%)

Memory
-0.6MiB live, 44.7MiB allocated; 5ms collecting garbage
Counts
35 → 3
Calls
Call 1
Inputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 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 (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
(*.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 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 r #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 r (/.f64 #s(approx (sin b) (fma.f64 b #s(literal 1 binary64) (*.f64 b (*.f64 (*.f64 b b) #s(literal -1/6 binary64))))) (cos.f64 (+.f64 a b))))
Outputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(/.f64 #s(approx (* r (sin b)) (*.f64 (fma.f64 (*.f64 (*.f64 b b) #s(literal -1/6 binary64)) r r) b)) (cos.f64 (+.f64 a b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
Calls

2 calls:

12.0ms
b
9.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
Results
AccuracySegmentsBranch
77.0%3(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
77.0%3b
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes23.0ms (0.4%)

Memory
-10.5MiB live, 43.6MiB allocated; 10ms collecting garbage
Counts
32 → 3
Calls
Call 1
Inputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 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 (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
(*.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))))
Outputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 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 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
Calls

2 calls:

13.0ms
b
8.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
Results
AccuracySegmentsBranch
77.0%3(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
77.0%3b
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes19.0ms (0.3%)

Memory
-3.0MiB live, 42.7MiB allocated; 3ms collecting garbage
Counts
31 → 3
Calls
Call 1
Inputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (*.f64 a b) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a b #s(literal 1 binary64)) r))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 b (*.f64 a r) r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (*.f64 b r) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (*.f64 (*.f64 b b) r) a (*.f64 b r))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) #s(approx (tan b) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 b b) #s(literal 1 binary64)) b))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 a r (/.f64 r b)) b))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) #s(approx (+ (* (* b r) a) r) (*.f64 (fma.f64 b r (/.f64 r a)) a))) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (fma.f64 (fma.f64 (*.f64 a r) #s(literal 1/2 binary64) (*.f64 b r)) a r)) b))
#s(approx (* r (/ (sin b) (cos (+ a b)))) #s(approx (* (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) b) (fma.f64 (fma.f64 (*.f64 (*.f64 b r) a) #s(literal 1/2 binary64) (*.f64 (*.f64 b b) r)) a (*.f64 b r))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 #s(approx (+ (* b (/ (* (sin a) r) (pow (cos a) 2))) (/ r (cos a))) (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a b) r) (*.f64 (*.f64 a b) r)) (*.f64 r r)) (-.f64 (*.f64 (*.f64 a b) r) r))) b))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 b (PI.f64)))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 (+.f64 (+.f64 b (PI.f64)) (PI.f64)))))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a))))) (*.f64 b (/.f64 r (cos.f64 a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (*.f64 b (/.f64 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 (+ (+ a b) (/ (PI) 2)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 #s(approx (+ (* 1/2 (PI)) a) a)))))
(*.f64 r #s(approx (/ (sin b) (+ (* (cos b) (cos a)) (* (neg (sin b)) (sin a)))) (/.f64 b (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b)))) (/.f64 b (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) #s(literal 1 binary64)))))
(*.f64 r (/.f64 #s(approx (sin b) b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b)) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 r #s(approx (sin b) #s(approx (* (+ (* (* b b) -1/6) 1) b) b))) (cos.f64 (+.f64 a b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
#s(approx (* r (/ (sin b) (+ (* (sin a) (neg (sin b))) (* (cos a) (cos b))))) (/.f64 (*.f64 b r) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a))))
(*.f64 r #s(approx (/ (sin b) (sin (+ (+ a b) (/ (PI) 2)))) (/.f64 b (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) a)))))
(*.f64 r (/.f64 (sin.f64 b) #s(approx (cos (+ a b)) #s(approx (+ (* (neg b) (sin a)) (cos a)) (fma.f64 (neg.f64 a) b #s(literal 1 binary64))))))
Outputs
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
#s(approx (* r (/ (sin b) (cos (+ a b)))) (*.f64 b (/.f64 r (cos.f64 a))))
(*.f64 r #s(approx (/ (sin b) (cos (+ a b))) (tan.f64 b)))
Calls

2 calls:

10.0ms
b
8.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
Results
AccuracySegmentsBranch
76.9%3(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
76.9%3b
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes23.0ms (0.4%)

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

5 calls:

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

Compiled 19 to 24 computations (-26.3% saved)

regimes32.0ms (0.6%)

Memory
-16.6MiB live, 30.3MiB allocated; 2ms collecting garbage
Accuracy

Total -16.5b remaining (-40.1%)

Threshold costs -16.5b (-40.1%)

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

5 calls:

17.0ms
b
4.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
3.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
3.0ms
a
3.0ms
r
Results
AccuracySegmentsBranch
35.7%1b
35.7%1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
35.7%1a
35.7%1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
35.7%1r
Compiler

Compiled 19 to 24 computations (-26.3% saved)

bsearch22.0ms (0.4%)

Memory
27.9MiB live, 27.9MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
2.0ms
0.6034783578555464
0.6415783994405336
18.0ms
-0.014410718382010048
-7.952825083519644e-6
Samples
10.0ms63×1valid
5.0ms81×0valid
Compiler

Compiled 210 to 194 computations (7.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-sin: 4.0ms (37.3% of total)
ival-cos: 3.0ms (28% of total)
ival-add!: 1.0ms (9.3% of total)
adjust: 1.0ms (9.3% of total)
ival-mult!: 1.0ms (9.3% of total)
ival-div!: 1.0ms (9.3% of total)

bsearch1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
0.0ms
0.6034783578555464
0.6415783994405336
1.0ms
-0.014410718382010048
-7.952825083519644e-6
Compiler

Compiled 219 to 203 computations (7.3% saved)

bsearch57.0ms (1%)

Memory
-26.8MiB live, 68.1MiB allocated; 11ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
22.0ms
0.00017163380395732668
580915.1556677495
31.0ms
-17.784667934687036
-3.634007981702881e-5
Samples
17.0ms134×1valid
9.0ms154×0valid
Compiler

Compiled 588 to 500 computations (15% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
ival-cos: 7.0ms (37.9% of total)
ival-sin: 4.0ms (21.6% of total)
adjust: 3.0ms (16.2% of total)
ival-mult!: 2.0ms (10.8% of total)
ival-div!: 2.0ms (10.8% of total)
ival-add!: 1.0ms (5.4% of total)

bsearch2.0ms (0%)

Memory
4.7MiB live, 4.7MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
0.00017163380395732668
580915.1556677495
1.0ms
-17.784667934687036
-3.634007981702881e-5
Compiler

Compiled 588 to 482 computations (18% saved)

bsearch2.0ms (0%)

Memory
5.4MiB live, 5.4MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
0.00017163380395732668
580915.1556677495
1.0ms
-17.784667934687036
-3.634007981702881e-5
Compiler

Compiled 552 to 482 computations (12.7% saved)

bsearch36.0ms (0.6%)

Memory
15.2MiB live, 59.2MiB allocated; 5ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
10.0ms
0.00017163380395732668
580915.1556677495
23.0ms
-3.634007981702881e-5
-3.1587002404238823e-12
Samples
14.0ms114×1valid
9.0ms110×0valid
Compiler

Compiled 516 to 446 computations (13.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
ival-cos: 6.0ms (34% of total)
ival-add!: 4.0ms (22.7% of total)
ival-sin: 3.0ms (17% of total)
adjust: 2.0ms (11.3% of total)
ival-mult!: 2.0ms (11.3% of total)
ival-div!: 1.0ms (5.7% of total)

derivations291.0ms (5%)

Memory
-0.6MiB live, 347.7MiB allocated; 42ms collecting garbage
Stop Event
fuel
Compiler

Compiled 361 to 89 computations (75.3% saved)

preprocess110.0ms (1.9%)

Memory
-1.4MiB live, 142.2MiB allocated; 12ms collecting garbage
Remove

(negabs r)

Compiler

Compiled 1 462 to 596 computations (59.2% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...