Details

Time bar (total: 17.3s)

analyze430.0ms (2.5%)

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
6.3%6.2%93.6%0.1%0%0%0%7
9.4%9.4%90.5%0.1%0%0%0%8
14.1%14%85.8%0.1%0%0%0%9
16.4%16.4%83.5%0.1%0%0%0%10
19.1%19.1%80.7%0.1%0%0%0%11
20.5%20.5%79.4%0.1%0%0%0%12
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample4.0s (23.4%)

Results
2.5s3628×body1024valid
835.0ms2972×body256valid
470.0ms1440×body512valid
182.0ms216×body2048valid
Bogosity

preprocess56.0ms (0.3%)

Algorithm
egg-herbie
Rules
1344×rational_best-simplify-51
848×trig-simplify-11
838×rational_best-simplify-52
768×rational_best-simplify-1
736×rational_best-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025108
157108
2110108
3183108
4259108
5425108
6893108
72243108
84405108
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 a (/.f64 (sin.f64 b) (cos.f64 (+.f64 r b))))
(*.f64 b (/.f64 (sin.f64 r) (cos.f64 (+.f64 a r))))
(*.f64 r (/.f64 (sin.f64 a) (cos.f64 (+.f64 b a))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 a (/.f64 (sin.f64 b) (cos.f64 (+.f64 r b))))
(*.f64 b (/.f64 (sin.f64 r) (cos.f64 (+.f64 a r))))
(*.f64 b (/.f64 (sin.f64 r) (cos.f64 (+.f64 r a))))
(*.f64 r (/.f64 (sin.f64 a) (cos.f64 (+.f64 b a))))
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify65.0ms (0.4%)

Algorithm
egg-herbie
Rules
1188×rational_best-simplify-1
868×trig-simplify-11
690×rational_best-simplify-51
650×rational_best-simplify-52
626×trig-simplify-9
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01127
12527
23527
35827
48427
511427
618627
738227
897427
9252927
10522527
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))

eval1.0ms (0%)

Compiler

Compiled 21 to 12 computations (42.9% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
15.8b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
15.8b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
Compiler

Compiled 12 to 8 computations (33.3% saved)

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
0.2b
(/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))
2.5b
(cos.f64 (+.f64 b a))
Compiler

Compiled 31 to 8 computations (74.2% saved)

series13.0ms (0.1%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
2.0ms
a
@inf
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
1.0ms
r
@0
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
1.0ms
a
@-inf
(/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))
1.0ms
b
@0
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
1.0ms
b
@0
(/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))

rewrite62.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
934×rational_best-5
932×rational_best-4
932×rational_best-2
932×rational_best-3
932×rational_best-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01159
110459
242759
3186859
Stop Event
node limit
Counts
3 → 56
Calls
Call 1
Inputs
(cos.f64 (+.f64 b a))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (+.f64 b a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) (cos.f64 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 0) (cos.f64 0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 0) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 0) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 0) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 0) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 b a)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 b a))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (cos.f64 (+.f64 b a))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (+.f64 r r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)))))

simplify275.0ms (1.6%)

Algorithm
egg-herbie
Rules
1196×rational_best-simplify-80
1112×rational_best-simplify-78
1058×rational_best-simplify-94
934×rational_best-simplify-2
848×rational_best-simplify-135
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02824822
15984592
214334592
344274590
479144590
Stop Event
node limit
Counts
140 → 140
Calls
Call 1
Inputs
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))))) (pow.f64 b 4))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(+.f64 (cos.f64 (+.f64 b a)) 0)
(+.f64 0 (cos.f64 (+.f64 b a)))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))
(-.f64 (cos.f64 (+.f64 b a)) 0)
(-.f64 0 (neg.f64 (cos.f64 (+.f64 b a))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(*.f64 (cos.f64 (+.f64 b a)) 1)
(*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 0))
(*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))))
(*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 0) (cos.f64 0)))
(*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 0) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(*.f64 1 (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a))))
(*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 0) (/.f64 1 (cos.f64 (+.f64 b a)))))
(*.f64 (cos.f64 0) (cos.f64 (+.f64 b a)))
(*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (cos.f64 0) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(/.f64 (cos.f64 (+.f64 b a)) 1)
(/.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) 2) 2)
(/.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 b a))) 2) -2)
(pow.f64 (cos.f64 (+.f64 b a)) 1)
(neg.f64 (neg.f64 (cos.f64 (+.f64 b a))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (+.f64 r r)) 2)
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
Outputs
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))
(+.f64 (cos.f64 a) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(+.f64 (*.f64 (sin.f64 a) (neg.f64 b)) (+.f64 (*.f64 (pow.f64 b 2) (*.f64 -1/2 (cos.f64 a))) (cos.f64 a)))
(+.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) (neg.f64 b)) (*.f64 (pow.f64 b 2) (*.f64 (cos.f64 a) -1/2))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))) (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (+.f64 (*.f64 (pow.f64 b 2) (*.f64 -1/2 (cos.f64 a))) (cos.f64 a)))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (+.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) (*.f64 (cos.f64 a) -1/2))))
(+.f64 (*.f64 (pow.f64 b 2) (*.f64 (cos.f64 a) -1/2)) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3))))))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (+.f64 a b))
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(+.f64 (cos.f64 b) (*.f64 -1 (*.f64 a (sin.f64 b))))
(+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 a (sin.f64 b))) (+.f64 (cos.f64 b) (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2)))))
(+.f64 (*.f64 (pow.f64 a 2) (*.f64 -1/2 (cos.f64 b))) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a))))
(+.f64 (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a))) (*.f64 (pow.f64 a 2) (*.f64 -1/2 (cos.f64 b))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))))
(+.f64 (*.f64 -1 (*.f64 a (sin.f64 b))) (+.f64 (cos.f64 b) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2))) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))))
(+.f64 (+.f64 (cos.f64 b) (*.f64 (pow.f64 a 2) (*.f64 -1/2 (cos.f64 b)))) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 1/6 (pow.f64 a 3)))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (pow.f64 a 2) (*.f64 -1/2 (cos.f64 b))) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 1/6 (pow.f64 a 3))))))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (+.f64 a b))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 b (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (neg.f64 (*.f64 (pow.f64 b 4) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3)))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3)) (neg.f64 (pow.f64 b 4)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))) (neg.f64 (pow.f64 a 2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))) (neg.f64 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))) (*.f64 (pow.f64 a 3) (neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))) (neg.f64 (pow.f64 a 2)))) (*.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3)) (neg.f64 (pow.f64 a 3)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))))) (pow.f64 b 4))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))))))))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (neg.f64 (*.f64 (pow.f64 b 4) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)) -1/3))))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)) -1/3)) (neg.f64 (pow.f64 b 4))))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 (pow.f64 b 4) (neg.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)) -1/3)))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (neg.f64 (pow.f64 a 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)))))))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)) -1/3))) (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)) -1/3))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))) (neg.f64 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(+.f64 (cos.f64 (+.f64 b a)) 0)
(cos.f64 (+.f64 a b))
(+.f64 0 (cos.f64 (+.f64 b a)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))
(cos.f64 (+.f64 a b))
(-.f64 (cos.f64 (+.f64 b a)) 0)
(cos.f64 (+.f64 a b))
(-.f64 0 (neg.f64 (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
(cos.f64 (+.f64 a b))
(-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(-.f64 (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) 2)) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (*.f64 2 (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (cos.f64 (+.f64 b a)) 1)
(cos.f64 (+.f64 a b))
(*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 0))
(cos.f64 (+.f64 a b))
(*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))))
(cos.f64 (+.f64 a b))
(*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(cos.f64 (+.f64 a b))
(*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 0) (cos.f64 0)))
(cos.f64 (+.f64 a b))
(*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 0) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(cos.f64 (+.f64 a b))
(*.f64 1 (cos.f64 (+.f64 b a)))
(cos.f64 (+.f64 a b))
(*.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))
(cos.f64 (+.f64 a b))
(*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 0) (/.f64 1 (cos.f64 (+.f64 b a)))))
(cos.f64 (+.f64 a b))
(*.f64 (cos.f64 0) (cos.f64 (+.f64 b a)))
(cos.f64 (+.f64 a b))
(*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))
(cos.f64 (+.f64 a b))
(*.f64 (/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(cos.f64 (+.f64 a b))
(*.f64 (/.f64 (cos.f64 0) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(*.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(cos.f64 (+.f64 a b))
(*.f64 (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(*.f64 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(/.f64 (cos.f64 (+.f64 b a)) 1)
(cos.f64 (+.f64 a b))
(/.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) 2) 2)
(cos.f64 (+.f64 a b))
(/.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 b a))) 2) -2)
(cos.f64 (+.f64 a b))
(pow.f64 (cos.f64 (+.f64 b a)) 1)
(cos.f64 (+.f64 a b))
(neg.f64 (neg.f64 (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (+.f64 r r)) 2)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))

eval131.0ms (0.8%)

Compiler

Compiled 4776 to 2120 computations (55.6% saved)

prune33.0ms (0.2%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New12515140
Fresh000
Picked101
Done000
Total12615141
Error
0.2b
Counts
141 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
15.7b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
27.2b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
29.6b
(/.f64 (*.f64 b r) (cos.f64 a))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
28.6b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (neg.f64 b)) (+.f64 (*.f64 (pow.f64 b 2) (*.f64 -1/2 (cos.f64 a))) (cos.f64 a)))))
28.7b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))))
28.4b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))))
15.8b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))
15.8b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
15.8b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))))
27.2b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
27.1b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
29.6b
(*.f64 r (/.f64 b (cos.f64 a)))
29.6b
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
Compiler

Compiled 552 to 320 computations (42% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 b) (cos.f64 a))
0.2b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
0.2b
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
0.2b
(*.f64 (sin.f64 b) (sin.f64 a))
Compiler

Compiled 65 to 12 computations (81.5% saved)

series16.0ms (0.1%)

Counts
4 → 108
Calls

27 calls:

TimeVariablePointExpression
3.0ms
a
@inf
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
2.0ms
r
@0
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
1.0ms
b
@inf
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
1.0ms
a
@inf
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
1.0ms
b
@inf
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))

rewrite67.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1236×rational_best-5
1234×rational_best-4
1234×rational_best-2
1234×rational_best-3
1234×rational_best-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01578
114378
256978
3254278
Stop Event
node limit
Counts
4 → 43
Calls
Call 1
Inputs
(*.f64 (sin.f64 b) (sin.f64 a))
(/.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) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 (cos.f64 b) (cos.f64 a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 a (-.f64 0 (neg.f64 b))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 b (-.f64 0 (neg.f64 a))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (+.f64 r r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 b) (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 1)))))

simplify154.0ms (0.9%)

Algorithm
egg-herbie
Rules
1226×rational_best-simplify-2
766×rational_best-simplify-49
746×rational_best-simplify-132
744×rational_best-simplify-50
644×rational_best-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02975463
15875175
210575105
323625103
445025103
Stop Event
node limit
Counts
151 → 164
Calls
Call 1
Inputs
(*.f64 (sin.f64 a) b)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 (sin.f64 a) b))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))))))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) a)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 (sin.f64 b) a))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 (sin.f64 b) a)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 (sin.f64 b) a))))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))))) (pow.f64 b 4))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))
(+.f64 (*.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4))) (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 a) (pow.f64 b 6))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4))) (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(cos.f64 b)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (cos.f64 b))) (cos.f64 b)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 a 6) (cos.f64 b))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (cos.f64 b))) (cos.f64 b))))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)
(+.f64 0 (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)
(/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)
(/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 b a))) 2)
(/.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 2)) 2)
(/.f64 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) 2)
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 a (-.f64 0 (neg.f64 b))))) 2)
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 b (-.f64 0 (neg.f64 a))))) 2)
(pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)
(+.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (+.f64 r r)) 2)
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 0)
(+.f64 0 (*.f64 (cos.f64 b) (cos.f64 a)))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 0)
(/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 1)
(/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(/.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 b a))) 2)
(/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) 2)
(/.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 2)
(pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 1)
Outputs
(*.f64 (sin.f64 a) b)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 (sin.f64 a) b))
(+.f64 (*.f64 (sin.f64 a) b) (*.f64 (sin.f64 a) (*.f64 -1/6 (pow.f64 b 3))))
(*.f64 (sin.f64 a) (+.f64 b (*.f64 -1/6 (pow.f64 b 3))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)))))
(+.f64 (*.f64 (sin.f64 a) (*.f64 -1/6 (pow.f64 b 3))) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 b (*.f64 -1/6 (pow.f64 b 3)))) (*.f64 (sin.f64 a) (*.f64 1/120 (pow.f64 b 5))))
(*.f64 (sin.f64 a) (+.f64 (+.f64 b (*.f64 1/120 (pow.f64 b 5))) (*.f64 -1/6 (pow.f64 b 3))))
(*.f64 (sin.f64 a) (+.f64 b (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (*.f64 1/120 (pow.f64 b 5)))))
(+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))))))
(+.f64 (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)))) (+.f64 (*.f64 (sin.f64 a) (*.f64 -1/6 (pow.f64 b 3))) (*.f64 (sin.f64 a) (*.f64 -1/5040 (pow.f64 b 7)))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b)) (*.f64 (sin.f64 a) (+.f64 (*.f64 -1/5040 (pow.f64 b 7)) (*.f64 -1/6 (pow.f64 b 3)))))
(*.f64 (sin.f64 a) (+.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (*.f64 -1/5040 (pow.f64 b 7))) (+.f64 b (*.f64 1/120 (pow.f64 b 5)))))
(*.f64 (sin.f64 a) (+.f64 b (+.f64 (*.f64 1/120 (pow.f64 b 5)) (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (*.f64 -1/5040 (pow.f64 b 7))))))
(*.f64 (sin.f64 a) (+.f64 (*.f64 -1/5040 (pow.f64 b 7)) (+.f64 b (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (*.f64 1/120 (pow.f64 b 5))))))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) a)
(*.f64 a (sin.f64 b))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 (sin.f64 b) a))
(+.f64 (*.f64 a (sin.f64 b)) (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(*.f64 (sin.f64 b) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (+.f64 a (*.f64 -1/6 (pow.f64 a 3))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 (sin.f64 b) a)))
(+.f64 (*.f64 a (sin.f64 b)) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))))
(+.f64 (*.f64 (pow.f64 a 5) (*.f64 1/120 (sin.f64 b))) (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) a)))
(*.f64 (sin.f64 b) (+.f64 (+.f64 (*.f64 -1/6 (pow.f64 a 3)) (*.f64 1/120 (pow.f64 a 5))) a))
(*.f64 (sin.f64 b) (+.f64 a (+.f64 (*.f64 -1/6 (pow.f64 a 3)) (*.f64 1/120 (pow.f64 a 5)))))
(*.f64 (sin.f64 b) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) (+.f64 a (*.f64 1/120 (pow.f64 a 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 (sin.f64 b) a))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 a (sin.f64 b)) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 (sin.f64 b) (*.f64 -1/5040 (pow.f64 a 7))))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 1/120 (pow.f64 a 5)) a)) (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) (*.f64 -1/5040 (pow.f64 a 7)))))
(*.f64 (sin.f64 b) (+.f64 (+.f64 (*.f64 -1/6 (pow.f64 a 3)) (*.f64 -1/5040 (pow.f64 a 7))) (+.f64 a (*.f64 1/120 (pow.f64 a 5)))))
(*.f64 (sin.f64 b) (+.f64 a (+.f64 (*.f64 1/120 (pow.f64 a 5)) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) (*.f64 -1/5040 (pow.f64 a 7))))))
(*.f64 (sin.f64 b) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) (+.f64 a (+.f64 (*.f64 -1/5040 (pow.f64 a 7)) (*.f64 1/120 (pow.f64 a 5))))))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 b (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/2) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (neg.f64 (*.f64 (pow.f64 b 4) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3)))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3)) (neg.f64 (pow.f64 b 4))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))) (neg.f64 (pow.f64 a 2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))) (neg.f64 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))) (*.f64 (pow.f64 a 3) (neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))) (neg.f64 (pow.f64 a 2)))) (*.f64 (pow.f64 a 3) (neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))))) (pow.f64 b 4))))))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (+.f64 (neg.f64 (*.f64 (pow.f64 b 4) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)) -1/3)))) (/.f64 (*.f64 b r) (cos.f64 a)))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)) -1/3)) (neg.f64 (pow.f64 b 4))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 (pow.f64 b 4) (neg.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)) -1/3)))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2)) (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2)) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (neg.f64 (pow.f64 a 2)))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2))) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (neg.f64 (pow.f64 a 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)))))))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)) -1/3))) (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2))) (neg.f64 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))
(+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 -1/2 (pow.f64 b 2))))
(+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2)))
(+.f64 (*.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4))) (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(+.f64 (*.f64 (cos.f64 a) (*.f64 -1/2 (pow.f64 b 2))) (+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 1/24 (pow.f64 b 4)))))
(+.f64 (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2)) (+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 4) 1/24))))
(+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (+.f64 (*.f64 (pow.f64 b 4) 1/24) (*.f64 (pow.f64 b 2) -1/2))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 a) (pow.f64 b 6))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4))) (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))))
(+.f64 (+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 -1/2 (pow.f64 b 2)))) (+.f64 (*.f64 (cos.f64 a) (*.f64 1/24 (pow.f64 b 4))) (*.f64 (cos.f64 a) (*.f64 -1/720 (pow.f64 b 6)))))
(+.f64 (+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2))) (*.f64 (cos.f64 a) (+.f64 (*.f64 -1/720 (pow.f64 b 6)) (*.f64 (pow.f64 b 4) 1/24))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2)) (*.f64 (cos.f64 a) (+.f64 (*.f64 -1/720 (pow.f64 b 6)) (*.f64 (pow.f64 b 4) 1/24)))))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(cos.f64 b)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))
(+.f64 (cos.f64 b) (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2))))
(+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (*.f64 -1/2 (pow.f64 a 2))))
(+.f64 (cos.f64 b) (*.f64 (pow.f64 a 2) (*.f64 -1/2 (cos.f64 b))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (cos.f64 b))) (cos.f64 b)))
(+.f64 (cos.f64 b) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 b) (pow.f64 a 4))) (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2)))))
(+.f64 (*.f64 (cos.f64 b) (*.f64 1/24 (pow.f64 a 4))) (+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (*.f64 -1/2 (pow.f64 a 2)))))
(+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (+.f64 (*.f64 1/24 (pow.f64 a 4)) (*.f64 -1/2 (pow.f64 a 2)))))
(+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 1/24 (pow.f64 a 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 a 6) (cos.f64 b))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (cos.f64 b))) (cos.f64 b))))
(+.f64 (+.f64 (cos.f64 b) (*.f64 1/24 (*.f64 (cos.f64 b) (pow.f64 a 4)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2))) (*.f64 -1/720 (*.f64 (cos.f64 b) (pow.f64 a 6)))))
(+.f64 (*.f64 (cos.f64 b) (*.f64 -1/2 (pow.f64 a 2))) (+.f64 (+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (*.f64 1/24 (pow.f64 a 4)))) (*.f64 (cos.f64 b) (*.f64 -1/720 (pow.f64 a 6)))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (cos.f64 b) (*.f64 1/24 (pow.f64 a 4))) (*.f64 (cos.f64 b) (+.f64 (*.f64 -1/720 (pow.f64 a 6)) (*.f64 -1/2 (pow.f64 a 2))))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (cos.f64 b) (*.f64 1/24 (pow.f64 a 4))) (*.f64 (cos.f64 b) (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 -1/720 (pow.f64 a 6))))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (pow.f64 a 6) (*.f64 (cos.f64 b) -1/720)) (*.f64 (cos.f64 b) (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 1/24 (pow.f64 a 4))))))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(*.f64 (cos.f64 a) (cos.f64 b))
(+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)
(*.f64 (sin.f64 a) (sin.f64 b))
(+.f64 0 (*.f64 (sin.f64 b) (sin.f64 a)))
(*.f64 (sin.f64 a) (sin.f64 b))
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 b a))) 2)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 2)) 2)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) 2)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 a (-.f64 0 (neg.f64 b))))) 2)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 b (-.f64 0 (neg.f64 a))))) 2)
(*.f64 (sin.f64 a) (sin.f64 b))
(pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)
(*.f64 (sin.f64 a) (sin.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (+.f64 r r)) 2)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 0)
(*.f64 (cos.f64 a) (cos.f64 b))
(+.f64 0 (*.f64 (cos.f64 b) (cos.f64 a)))
(*.f64 (cos.f64 a) (cos.f64 b))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 0)
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 1)
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (/.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 b a))) 2)
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) 2)
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 2)
(*.f64 (cos.f64 a) (cos.f64 b))
(pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 1)
(*.f64 (cos.f64 a) (cos.f64 b))

localize8.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 r (/.f64 b (cos.f64 a)))
0.1b
(/.f64 b (cos.f64 a))
Compiler

Compiled 18 to 6 computations (66.7% saved)

series7.0ms (0%)

Counts
2 → 40
Calls

15 calls:

TimeVariablePointExpression
1.0ms
r
@-inf
(*.f64 r (/.f64 b (cos.f64 a)))
1.0ms
b
@0
(*.f64 r (/.f64 b (cos.f64 a)))
1.0ms
a
@0
(*.f64 r (/.f64 b (cos.f64 a)))
0.0ms
r
@0
(*.f64 r (/.f64 b (cos.f64 a)))
0.0ms
b
@inf
(/.f64 b (cos.f64 a))

rewrite99.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1016×rational_best-simplify-57
614×rational_best-simplify-43
548×rational_best-5
548×rational_best-2
548×rational_best-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
17528
226428
3115128
4512428
Stop Event
node limit
Counts
2 → 34
Calls
Call 1
Inputs
(/.f64 b (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 b (cos.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 b (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 b (cos.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 b (cos.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 b (cos.f64 a)) (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 b (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 b (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 1 (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))) (*.f64 (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 b (cos.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 b (cos.f64 a))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 b (cos.f64 a)) r))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (/.f64 b (cos.f64 a)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (/.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (*.f64 (/.f64 b (cos.f64 a)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 b (cos.f64 a)) (+.f64 r r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 (/.f64 b (cos.f64 a)) r)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (/.f64 b (cos.f64 a)) r)))))))

simplify197.0ms (1.1%)

Algorithm
egg-herbie
Rules
1542×rational_best-simplify-132
906×rational_best-simplify-2
540×rational_best-simplify-43
504×rational_best-simplify-49
468×rational_best-simplify-80
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01251526
12721408
25551376
313151374
425061374
562491374
Stop Event
node limit
Counts
74 → 76
Calls
Call 1
Inputs
b
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) b)) b)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 b) (*.f64 -1/4 b)))) b))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 b) (*.f64 -1/4 b)))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/48 b) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 b) (*.f64 -1/4 b))) (*.f64 -1/720 b))))) b)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r b)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (*.f64 r b))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (+.f64 (*.f64 r b) (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 -1/4 (*.f64 b r)) (*.f64 1/24 (*.f64 r b)))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (+.f64 (*.f64 r b) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (*.f64 b r)) (*.f64 1/24 (*.f64 r b)))) (+.f64 (*.f64 -1/720 (*.f64 r b)) (*.f64 1/48 (*.f64 b r)))))) (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 -1/4 (*.f64 b r)) (*.f64 1/24 (*.f64 r b))))))))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) 0)
(+.f64 0 (/.f64 b (cos.f64 a)))
(-.f64 (/.f64 b (cos.f64 a)) 0)
(-.f64 0 (neg.f64 (/.f64 b (cos.f64 a))))
(*.f64 (/.f64 b (cos.f64 a)) 1)
(*.f64 (/.f64 b (cos.f64 a)) (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))
(*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))))
(*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))
(*.f64 1 (/.f64 b (cos.f64 a)))
(*.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 b (cos.f64 a)))
(*.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))
(*.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 1 (/.f64 b (cos.f64 a))))
(*.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a)))
(*.f64 (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a)))
(*.f64 (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))
(*.f64 (/.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))
(*.f64 (/.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))) (*.f64 (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))))
(*.f64 (/.f64 (/.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))
(*.f64 (/.f64 (/.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))
(pow.f64 (/.f64 b (cos.f64 a)) 1)
(neg.f64 (neg.f64 (/.f64 b (cos.f64 a))))
(+.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 0)
(+.f64 0 (*.f64 (/.f64 b (cos.f64 a)) r))
(-.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 0)
(-.f64 0 (neg.f64 (*.f64 (/.f64 b (cos.f64 a)) r)))
(/.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 1)
(/.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (/.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (*.f64 (/.f64 b (cos.f64 a)) r)))
(/.f64 (*.f64 (/.f64 b (cos.f64 a)) (+.f64 r r)) 2)
(/.f64 (*.f64 (neg.f64 (*.f64 (/.f64 b (cos.f64 a)) r)) 2) -2)
(pow.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 1)
(neg.f64 (neg.f64 (*.f64 (/.f64 b (cos.f64 a)) r)))
Outputs
b
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) b)) b)
(+.f64 b (*.f64 (pow.f64 a 2) (*.f64 1/2 b)))
(+.f64 b (*.f64 (pow.f64 a 2) (*.f64 b 1/2)))
(+.f64 b (*.f64 1/2 (*.f64 b (pow.f64 a 2))))
(+.f64 b (*.f64 b (*.f64 1/2 (pow.f64 a 2))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 b) (*.f64 -1/4 b)))) b))
(+.f64 b (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 b 1/24) (*.f64 b -1/4)))) (*.f64 (pow.f64 a 2) (*.f64 1/2 b))))
(+.f64 (neg.f64 (*.f64 (pow.f64 a 4) (*.f64 b -5/24))) (+.f64 b (*.f64 (pow.f64 a 2) (*.f64 b 1/2))))
(+.f64 b (+.f64 (*.f64 1/2 (*.f64 b (pow.f64 a 2))) (*.f64 (pow.f64 a 4) (neg.f64 (*.f64 b -5/24)))))
(+.f64 b (+.f64 (*.f64 (pow.f64 a 2) (*.f64 b 1/2)) (*.f64 (*.f64 b -5/24) (neg.f64 (pow.f64 a 4)))))
(+.f64 b (+.f64 (*.f64 b (*.f64 1/2 (pow.f64 a 2))) (*.f64 (*.f64 b -5/24) (neg.f64 (pow.f64 a 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 b) (*.f64 -1/4 b)))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/48 b) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 b) (*.f64 -1/4 b))) (*.f64 -1/720 b))))) b)))
(+.f64 (+.f64 b (*.f64 -1 (*.f64 (pow.f64 a 6) (+.f64 (*.f64 b -1/720) (+.f64 (*.f64 1/2 (+.f64 (*.f64 b 1/24) (*.f64 b -1/4))) (*.f64 b 1/48)))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 b 1/24) (*.f64 b -1/4)))) (*.f64 (pow.f64 a 2) (*.f64 1/2 b))))
(+.f64 (*.f64 (pow.f64 a 2) (*.f64 b 1/2)) (+.f64 b (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 4) (*.f64 b -5/24)) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (*.f64 b -5/24)) (+.f64 (*.f64 b -1/720) (*.f64 b 1/48))))))))
(+.f64 b (+.f64 (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 4) (*.f64 b -5/24)) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (*.f64 b -5/24)) (*.f64 b 7/360))))) (*.f64 1/2 (*.f64 b (pow.f64 a 2)))))
(+.f64 b (+.f64 (*.f64 (pow.f64 a 2) (*.f64 b 1/2)) (neg.f64 (+.f64 (*.f64 (pow.f64 a 4) (*.f64 b -5/24)) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (*.f64 b -5/24)) (*.f64 b 7/360)))))))
(+.f64 (+.f64 b (*.f64 b (*.f64 1/2 (pow.f64 a 2)))) (neg.f64 (+.f64 (*.f64 (pow.f64 a 4) (*.f64 b -5/24)) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (*.f64 b -5/24)) (*.f64 b 7/360))))))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r b)
(*.f64 b r)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (*.f64 r b))
(+.f64 (*.f64 b r) (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 b r))))
(+.f64 (*.f64 b r) (*.f64 1/2 (*.f64 b (*.f64 (pow.f64 a 2) r))))
(*.f64 r (+.f64 b (*.f64 1/2 (*.f64 b (pow.f64 a 2)))))
(*.f64 (+.f64 b (*.f64 (pow.f64 a 2) (*.f64 b 1/2))) r)
(*.f64 (+.f64 b (*.f64 b (*.f64 1/2 (pow.f64 a 2)))) r)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (+.f64 (*.f64 r b) (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 -1/4 (*.f64 b r)) (*.f64 1/24 (*.f64 r b)))))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 b (*.f64 -1/4 r)) (*.f64 1/24 (*.f64 b r))))) (+.f64 (*.f64 b r) (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 b r)))))
(+.f64 (+.f64 (*.f64 b r) (*.f64 1/2 (*.f64 b (*.f64 (pow.f64 a 2) r)))) (neg.f64 (*.f64 (pow.f64 a 4) (*.f64 (*.f64 b r) -5/24))))
(+.f64 (*.f64 r (+.f64 b (*.f64 1/2 (*.f64 b (pow.f64 a 2))))) (*.f64 (pow.f64 a 4) (neg.f64 (*.f64 r (*.f64 b -5/24)))))
(+.f64 (*.f64 (+.f64 b (*.f64 (pow.f64 a 2) (*.f64 b 1/2))) r) (*.f64 (*.f64 (*.f64 b -5/24) r) (neg.f64 (pow.f64 a 4))))
(+.f64 (*.f64 (+.f64 b (*.f64 b (*.f64 1/2 (pow.f64 a 2)))) r) (*.f64 (pow.f64 a 4) (neg.f64 (*.f64 (*.f64 b r) -5/24))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (+.f64 (*.f64 r b) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (*.f64 b r)) (*.f64 1/24 (*.f64 r b)))) (+.f64 (*.f64 -1/720 (*.f64 r b)) (*.f64 1/48 (*.f64 b r)))))) (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 -1/4 (*.f64 b r)) (*.f64 1/24 (*.f64 r b))))))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 b (*.f64 -1/4 r)) (*.f64 1/24 (*.f64 b r)))) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (+.f64 (*.f64 b (*.f64 -1/4 r)) (*.f64 1/24 (*.f64 b r)))) (+.f64 (*.f64 r (*.f64 b -1/720)) (*.f64 b (*.f64 1/48 r))))))) (+.f64 (*.f64 b r) (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 b r)))))
(+.f64 (+.f64 (*.f64 b r) (*.f64 1/2 (*.f64 b (*.f64 (pow.f64 a 2) r)))) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 4) (*.f64 (*.f64 b r) -5/24)) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (*.f64 (*.f64 b r) -5/24)) (*.f64 (*.f64 b r) 7/360))))))
(+.f64 (*.f64 r (+.f64 b (*.f64 1/2 (*.f64 b (pow.f64 a 2))))) (neg.f64 (+.f64 (*.f64 (pow.f64 a 4) (*.f64 r (*.f64 b -5/24))) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (*.f64 r (*.f64 b -5/24))) (*.f64 r (*.f64 b 7/360)))))))
(+.f64 (*.f64 (+.f64 b (*.f64 (pow.f64 a 2) (*.f64 b 1/2))) r) (neg.f64 (+.f64 (*.f64 (pow.f64 a 4) (*.f64 (*.f64 b -5/24) r)) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (*.f64 (*.f64 b -5/24) r)) (*.f64 r (*.f64 b 7/360)))))))
(+.f64 (*.f64 (+.f64 b (*.f64 b (*.f64 1/2 (pow.f64 a 2)))) r) (neg.f64 (+.f64 (*.f64 (pow.f64 a 4) (*.f64 (*.f64 b r) -5/24)) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/2 (*.f64 (*.f64 b r) -5/24)) (*.f64 r (*.f64 b 7/360)))))))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) 0)
(/.f64 b (cos.f64 a))
(+.f64 0 (/.f64 b (cos.f64 a)))
(/.f64 b (cos.f64 a))
(-.f64 (/.f64 b (cos.f64 a)) 0)
(/.f64 b (cos.f64 a))
(-.f64 0 (neg.f64 (/.f64 b (cos.f64 a))))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 b (cos.f64 a)) 1)
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 b (cos.f64 a)) (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))
(/.f64 b (cos.f64 a))
(*.f64 1 (/.f64 b (cos.f64 a)))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 b (cos.f64 a)))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))
(/.f64 b (cos.f64 a))
(*.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 1 (/.f64 b (cos.f64 a))))
(/.f64 b (cos.f64 a))
(*.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a)))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a)))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 (/.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))) (*.f64 (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 (/.f64 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 (/.f64 (*.f64 (/.f64 b (cos.f64 a)) (/.f64 1 (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))))
(/.f64 b (cos.f64 a))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a))))
(/.f64 b (cos.f64 a))
(pow.f64 (/.f64 b (cos.f64 a)) 1)
(/.f64 b (cos.f64 a))
(neg.f64 (neg.f64 (/.f64 b (cos.f64 a))))
(/.f64 b (cos.f64 a))
(+.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 0)
(*.f64 r (/.f64 b (cos.f64 a)))
(+.f64 0 (*.f64 (/.f64 b (cos.f64 a)) r))
(*.f64 r (/.f64 b (cos.f64 a)))
(-.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 0)
(*.f64 r (/.f64 b (cos.f64 a)))
(-.f64 0 (neg.f64 (*.f64 (/.f64 b (cos.f64 a)) r)))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 1)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (/.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (*.f64 (/.f64 b (cos.f64 a)) r)))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 (/.f64 b (cos.f64 a)) (+.f64 r r)) 2)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 (neg.f64 (*.f64 (/.f64 b (cos.f64 a)) r)) 2) -2)
(*.f64 r (/.f64 b (cos.f64 a)))
(pow.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 1)
(*.f64 r (/.f64 b (cos.f64 a)))
(neg.f64 (neg.f64 (*.f64 (/.f64 b (cos.f64 a)) r)))
(*.f64 r (/.f64 b (cos.f64 a)))

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
0.1b
(/.f64 (sin.f64 b) (cos.f64 b))
Compiler

Compiled 21 to 7 computations (66.7% saved)

series4.0ms (0%)

Counts
2 → 28
Calls

9 calls:

TimeVariablePointExpression
1.0ms
b
@0
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
0.0ms
r
@inf
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
0.0ms
b
@-inf
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
0.0ms
b
@inf
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
0.0ms
b
@-inf
(/.f64 (sin.f64 b) (cos.f64 b))

rewrite102.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1158×rational_best-simplify-57
706×rational_best-simplify-43
628×rational_best-5
626×rational_best-4
626×rational_best-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0936
18136
230936
3130936
4577336
Stop Event
node limit
Counts
2 → 29
Calls
Call 1
Inputs
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (sin.f64 b) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))) (/.f64 (sin.f64 b) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 b))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 r r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))))))

simplify167.0ms (1%)

Algorithm
egg-herbie
Rules
1130×rational_best-simplify-2
1098×rational_best-simplify-80
924×rational_best-simplify-78
782×rational_best-simplify-44
768×rational_best-simplify-132
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01081415
12081331
23891307
314721307
429801307
551951307
Stop Event
node limit
Counts
57 → 59
Calls
Call 1
Inputs
b
(+.f64 (*.f64 1/3 (pow.f64 b 3)) b)
(+.f64 (*.f64 2/15 (pow.f64 b 5)) (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(+.f64 (*.f64 2/15 (pow.f64 b 5)) (+.f64 (*.f64 1/3 (pow.f64 b 3)) (+.f64 b (*.f64 17/315 (pow.f64 b 7)))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r b)
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (*.f64 r b))
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r))))))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 r) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))) (+.f64 (*.f64 -1/720 r) (*.f64 1/24 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))) (pow.f64 b 7)) (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 0)
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 b)))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 0)
(-.f64 0 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 b))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 1)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (sin.f64 b) (cos.f64 b)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))) (/.f64 (sin.f64 b) (cos.f64 b)))
(*.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 1)
(neg.f64 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 b))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 0)
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 0)
(-.f64 0 (neg.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 1)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 r r)) 2)
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 1)
(neg.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
Outputs
b
(+.f64 (*.f64 1/3 (pow.f64 b 3)) b)
(+.f64 b (*.f64 1/3 (pow.f64 b 3)))
(+.f64 (*.f64 2/15 (pow.f64 b 5)) (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(+.f64 b (+.f64 (*.f64 1/3 (pow.f64 b 3)) (*.f64 2/15 (pow.f64 b 5))))
(+.f64 (*.f64 2/15 (pow.f64 b 5)) (+.f64 (*.f64 1/3 (pow.f64 b 3)) (+.f64 b (*.f64 17/315 (pow.f64 b 7)))))
(+.f64 (+.f64 b (*.f64 17/315 (pow.f64 b 7))) (+.f64 (*.f64 1/3 (pow.f64 b 3)) (*.f64 2/15 (pow.f64 b 5))))
(+.f64 (*.f64 1/3 (pow.f64 b 3)) (+.f64 (*.f64 2/15 (pow.f64 b 5)) (+.f64 b (*.f64 17/315 (pow.f64 b 7)))))
(+.f64 (*.f64 1/3 (pow.f64 b 3)) (+.f64 (*.f64 17/315 (pow.f64 b 7)) (+.f64 b (*.f64 2/15 (pow.f64 b 5)))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r b)
(*.f64 b r)
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (*.f64 r b))
(+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (*.f64 r -1/2))))
(+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (*.f64 r 1/3)))
(+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (*.f64 1/3 r)))
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r))))))))
(+.f64 (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2)))))) (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (*.f64 r -1/2)))))
(+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (*.f64 r 1/3))) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (*.f64 r 1/3))))))
(+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (*.f64 1/3 r))) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))))
(+.f64 (*.f64 (pow.f64 b 3) (*.f64 1/3 r)) (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6))))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 r) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))) (+.f64 (*.f64 -1/720 r) (*.f64 1/24 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))) (pow.f64 b 7)) (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))))))
(+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2))))))) (+.f64 (*.f64 (pow.f64 b 7) (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2)))))) (+.f64 (*.f64 r -1/720) (*.f64 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2)) 1/24))))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (*.f64 r -1/2)))))
(+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (*.f64 r 1/3)))))) (+.f64 (*.f64 (pow.f64 b 3) (*.f64 r 1/3)) (*.f64 (pow.f64 b 7) (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (*.f64 r 1/3))))) (+.f64 (*.f64 r -1/720) (*.f64 (*.f64 r 1/3) 1/24)))))))
(+.f64 (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (*.f64 1/3 r))) (*.f64 (pow.f64 b 7) (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (+.f64 (*.f64 r -1/720) (*.f64 r 1/72)))))))
(+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6))))) (+.f64 (*.f64 (pow.f64 b 3) (*.f64 1/3 r)) (*.f64 (pow.f64 b 7) (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (+.f64 (*.f64 r -1/720) (*.f64 r 1/72)))))))
(+.f64 (*.f64 (pow.f64 b 3) (*.f64 1/3 r)) (+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6))))) (*.f64 (pow.f64 b 7) (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (+.f64 (*.f64 r -1/720) (*.f64 r 1/72)))))))
(+.f64 (+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (*.f64 1/3 r))) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6))))) (*.f64 (pow.f64 b 7) (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (+.f64 (*.f64 r -1/720) (*.f64 r 1/72))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 0)
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (sin.f64 b) (cos.f64 b))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 0)
(/.f64 (sin.f64 b) (cos.f64 b))
(-.f64 0 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 1)
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))) (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b)))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 1)
(/.f64 (sin.f64 b) (cos.f64 b))
(neg.f64 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(-.f64 0 (neg.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 r r)) 2)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(neg.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))
0.1b
(*.f64 (sin.f64 a) (neg.f64 b))
0.2b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))))
0.2b
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b))))
Compiler

Compiled 51 to 11 computations (78.4% saved)

series18.0ms (0.1%)

Counts
4 → 108
Calls

27 calls:

TimeVariablePointExpression
6.0ms
a
@0
(*.f64 (sin.f64 a) (neg.f64 b))
1.0ms
b
@inf
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))))
1.0ms
a
@inf
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b))))
1.0ms
a
@-inf
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b))))
1.0ms
r
@0
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))))

rewrite66.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
966×rational_best-5
964×rational_best-4
964×rational_best-2
964×rational_best-3
964×rational_best-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
014116
1129116
2477116
32018116
Stop Event
node limit
Counts
4 → 47
Calls
Call 1
Inputs
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))))
(*.f64 (sin.f64 a) (neg.f64 b))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (+.f64 r r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b (neg.f64 (sin.f64 a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 b (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 b (neg.f64 (sin.f64 a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (neg.f64 (sin.f64 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (neg.f64 (sin.f64 a))) (/.f64 (*.f64 b (neg.f64 (sin.f64 a))) (*.f64 b (neg.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (*.f64 (sin.f64 a) -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 b (neg.f64 (sin.f64 a))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 1)))))

simplify238.0ms (1.4%)

Algorithm
egg-herbie
Rules
1012×rational_best-simplify-78
900×rational_best-simplify-2
896×rational_best-simplify-80
748×rational_best-simplify-43
740×rational_best-simplify-1
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02637039
15856631
213546609
327206589
456156577
Stop Event
node limit
Counts
155 → 179
Calls
Call 1
Inputs
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 4))) (cos.f64 a))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 3)) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 3)) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))))
(sin.f64 b)
(+.f64 (sin.f64 b) (*.f64 (sin.f64 b) (*.f64 a b)))
(+.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (*.f64 a b)) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (sin.f64 b)) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 b 2))))))))
(+.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (*.f64 a b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (sin.f64 b)) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 b 2)))))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 b) b)) (+.f64 (*.f64 b (+.f64 (*.f64 -1/2 (sin.f64 b)) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 b 2))))) (*.f64 1/6 (*.f64 (sin.f64 b) b)))))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3)) (/.f64 (*.f64 r b) (cos.f64 a))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3)) (/.f64 (*.f64 r b) (cos.f64 a)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) r)) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) r)) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))))
(*.f64 (sin.f64 b) r)
(+.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 b r))) (*.f64 (sin.f64 b) r))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 b 2)))) (*.f64 -1/2 (*.f64 (sin.f64 b) r))) (pow.f64 a 2))) (+.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 b r))) (*.f64 (sin.f64 b) r)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 b 2)))) (*.f64 -1/2 (*.f64 (sin.f64 b) r))) (pow.f64 a 2))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 b) r)) (*.f64 -1 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)))) b) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (*.f64 r b))) (*.f64 -1/2 (*.f64 (sin.f64 b) (*.f64 r b))))))) (+.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 b r))) (*.f64 (sin.f64 b) r))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(*.f64 -1 (*.f64 a b))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 a 3) b)) (*.f64 -1 (*.f64 a b)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 a 3) b)) (+.f64 (*.f64 -1/120 (*.f64 (pow.f64 a 5) b)) (*.f64 -1 (*.f64 a b))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 a 3) b)) (+.f64 (*.f64 -1/120 (*.f64 (pow.f64 a 5) b)) (+.f64 (*.f64 1/5040 (*.f64 (pow.f64 a 7) b)) (*.f64 -1 (*.f64 a b)))))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 -1 (*.f64 (sin.f64 a) b))
1
(+.f64 1 (*.f64 -1 (*.f64 a b)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 -1 (*.f64 a b))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 a 3) b)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 -1 (*.f64 a b)))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 0)
(+.f64 0 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(-.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 0)
(*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 1)
(*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))
(*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))
(*.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(pow.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 1)
(+.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 0)
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 0)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 1)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (+.f64 r r)) 2)
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 1)
(+.f64 (*.f64 b (neg.f64 (sin.f64 a))) 0)
(+.f64 0 (*.f64 b (neg.f64 (sin.f64 a))))
(-.f64 (*.f64 b (neg.f64 (sin.f64 a))) 0)
(/.f64 (*.f64 b (neg.f64 (sin.f64 a))) 1)
(/.f64 (*.f64 b (neg.f64 (sin.f64 a))) (/.f64 (*.f64 b (neg.f64 (sin.f64 a))) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 b (*.f64 (sin.f64 a) -2)) 2)
(pow.f64 (*.f64 b (neg.f64 (sin.f64 a))) 1)
(-.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 0)
(*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 1)
(*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(*.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(*.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(*.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(*.f64 (/.f64 (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(*.f64 (/.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 1)
(/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(/.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 2) 2)
(pow.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 1)
Outputs
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3)))))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3))) (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (neg.f64 (pow.f64 b 3)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 b (cos.f64 a)) (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (neg.f64 (pow.f64 b 3)))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 4))) (cos.f64 a))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 4))) (cos.f64 a))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 4))) (cos.f64 a)) (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 -1 (+.f64 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 4))) (cos.f64 a))))))
(+.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) (neg.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 4))) (cos.f64 a)))))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))
(neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))
(*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3))) (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(neg.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 3)) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (+.f64 (*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 4)))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3))))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 4))))))
(+.f64 (neg.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2)))) (neg.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 4)))))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))
(neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))
(*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3))) (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(neg.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 3)) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (+.f64 (*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 4)))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3))))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 4))))))
(+.f64 (neg.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 2)))) (neg.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (sin.f64 b)) (pow.f64 (*.f64 b (sin.f64 a)) 4)))))
(sin.f64 b)
(+.f64 (sin.f64 b) (*.f64 (sin.f64 b) (*.f64 a b)))
(+.f64 (sin.f64 b) (*.f64 a (*.f64 b (sin.f64 b))))
(+.f64 (sin.f64 b) (*.f64 (sin.f64 b) (*.f64 b a)))
(+.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (*.f64 a b)) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (sin.f64 b)) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 b 2))))))))
(+.f64 (sin.f64 b) (+.f64 (*.f64 a (*.f64 b (sin.f64 b))) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 (sin.f64 b) -1/2) (*.f64 -1 (*.f64 (pow.f64 b 2) (sin.f64 b))))))))
(+.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (+.f64 (neg.f64 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) (+.f64 -1/2 (*.f64 (pow.f64 b 2) -1))))) (sin.f64 b)))
(+.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (*.f64 (*.f64 (sin.f64 b) (+.f64 -1/2 (neg.f64 (pow.f64 b 2)))) (neg.f64 (pow.f64 a 2)))))
(+.f64 (+.f64 (sin.f64 b) (*.f64 a (*.f64 b (sin.f64 b)))) (*.f64 (*.f64 (sin.f64 b) (+.f64 -1/2 (neg.f64 (pow.f64 b 2)))) (neg.f64 (pow.f64 a 2))))
(+.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (*.f64 a b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (sin.f64 b)) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 b 2)))))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 b) b)) (+.f64 (*.f64 b (+.f64 (*.f64 -1/2 (sin.f64 b)) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 b 2))))) (*.f64 1/6 (*.f64 (sin.f64 b) b)))))))))
(+.f64 (sin.f64 b) (+.f64 (*.f64 a (*.f64 b (sin.f64 b))) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 (sin.f64 b) (*.f64 -1/2 b)) (+.f64 (*.f64 b (+.f64 (*.f64 (sin.f64 b) -1/2) (*.f64 -1 (*.f64 (pow.f64 b 2) (sin.f64 b))))) (*.f64 (sin.f64 b) (*.f64 1/6 b))))) (*.f64 (pow.f64 a 2) (+.f64 (*.f64 (sin.f64 b) -1/2) (*.f64 -1 (*.f64 (pow.f64 b 2) (sin.f64 b)))))))))
(+.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (+.f64 (sin.f64 b) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) (+.f64 -1/2 (*.f64 (pow.f64 b 2) -1)))) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 b (*.f64 (sin.f64 b) -1/2)) (+.f64 (*.f64 b (*.f64 (sin.f64 b) (+.f64 -1/2 (*.f64 (pow.f64 b 2) -1)))) (*.f64 b (*.f64 1/6 (sin.f64 b))))))))))
(+.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (neg.f64 (+.f64 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) (+.f64 -1/2 (neg.f64 (pow.f64 b 2))))) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 b (*.f64 (sin.f64 b) -1/2)) (+.f64 (*.f64 b (*.f64 (sin.f64 b) (+.f64 -1/2 (neg.f64 (pow.f64 b 2))))) (*.f64 b (*.f64 1/6 (sin.f64 b))))))))))
(+.f64 (*.f64 a (*.f64 b (sin.f64 b))) (+.f64 (sin.f64 b) (neg.f64 (+.f64 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) (+.f64 -1/2 (neg.f64 (pow.f64 b 2))))) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 b (*.f64 (sin.f64 b) -1/2)) (+.f64 (*.f64 b (*.f64 (sin.f64 b) (+.f64 -1/2 (neg.f64 (pow.f64 b 2))))) (*.f64 (sin.f64 b) (*.f64 b 1/6)))))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3)) (/.f64 (*.f64 r b) (cos.f64 a))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))
(+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))) (*.f64 (pow.f64 b 3) (+.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3)) (/.f64 (*.f64 r b) (cos.f64 a)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))
(+.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))) (*.f64 (sin.f64 a) (pow.f64 b 4))) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))
(+.f64 (+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))) (*.f64 (sin.f64 a) (pow.f64 b 4))) (cos.f64 a)))
(+.f64 (+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))) (*.f64 (pow.f64 b 3) (+.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))) (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))) (*.f64 (sin.f64 a) (pow.f64 b 4))) (cos.f64 a)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))))
(neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) r)) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))))
(+.f64 (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4))) (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3))))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4))))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4))))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))))
(neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) r)) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))))
(+.f64 (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4))) (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2)))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3))))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4))))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (sin.f64 b) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4))))))
(*.f64 (sin.f64 b) r)
(+.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 b r))) (*.f64 (sin.f64 b) r))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 b 2)))) (*.f64 -1/2 (*.f64 (sin.f64 b) r))) (pow.f64 a 2))) (+.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 b r))) (*.f64 (sin.f64 b) r)))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r)))) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 b) r))) (*.f64 (sin.f64 b) (*.f64 -1/2 r))))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r)))) (neg.f64 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 r) (*.f64 (pow.f64 b 2) (*.f64 -1 r)))))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r)))) (*.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 r (neg.f64 (pow.f64 b 2))) (*.f64 -1/2 r))) (neg.f64 (pow.f64 a 2))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r)))) (*.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (*.f64 (pow.f64 b 2) r)) (*.f64 -1/2 r))) (neg.f64 (pow.f64 a 2))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 b 2)))) (*.f64 -1/2 (*.f64 (sin.f64 b) r))) (pow.f64 a 2))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 b) r)) (*.f64 -1 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)))) b) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (*.f64 r b))) (*.f64 -1/2 (*.f64 (sin.f64 b) (*.f64 r b))))))) (+.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 b r))) (*.f64 (sin.f64 b) r))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 b) r))) (*.f64 (sin.f64 b) (*.f64 -1/2 r))))) (+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r)))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 b (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 b) r))) (*.f64 (sin.f64 b) (*.f64 -1/2 r)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (*.f64 b r))) (*.f64 (sin.f64 b) (*.f64 -1/2 (*.f64 b r)))))))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r)))) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 r) (*.f64 (pow.f64 b 2) (*.f64 -1 r))))) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 b (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 r) (*.f64 (pow.f64 b 2) (*.f64 -1 r))))) (*.f64 (*.f64 b (*.f64 (sin.f64 b) r)) -1/3))))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r)))) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) (+.f64 (*.f64 r (neg.f64 (pow.f64 b 2))) (*.f64 -1/2 r)))) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 b (*.f64 (sin.f64 b) (+.f64 (*.f64 r (neg.f64 (pow.f64 b 2))) (*.f64 -1/2 r)))) (*.f64 (*.f64 (sin.f64 b) (*.f64 b r)) -1/3))))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r)))) (neg.f64 (+.f64 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) (+.f64 (neg.f64 (*.f64 (pow.f64 b 2) r)) (*.f64 -1/2 r)))) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 b (*.f64 (sin.f64 b) (+.f64 (neg.f64 (*.f64 (pow.f64 b 2) r)) (*.f64 -1/2 r)))) (*.f64 (*.f64 b (*.f64 (sin.f64 b) r)) -1/3))))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 -1 (*.f64 a b))
(*.f64 a (*.f64 -1 b))
(neg.f64 (*.f64 b a))
(*.f64 b (neg.f64 a))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 a 3) b)) (*.f64 -1 (*.f64 a b)))
(+.f64 (*.f64 a (*.f64 -1 b)) (*.f64 1/6 (*.f64 b (pow.f64 a 3))))
(+.f64 (neg.f64 (*.f64 b a)) (*.f64 1/6 (*.f64 b (pow.f64 a 3))))
(+.f64 (*.f64 b (neg.f64 a)) (*.f64 b (*.f64 1/6 (pow.f64 a 3))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 a 3) b)) (+.f64 (*.f64 -1/120 (*.f64 (pow.f64 a 5) b)) (*.f64 -1 (*.f64 a b))))
(+.f64 (*.f64 1/6 (*.f64 b (pow.f64 a 3))) (+.f64 (*.f64 a (*.f64 -1 b)) (*.f64 -1/120 (*.f64 b (pow.f64 a 5)))))
(+.f64 (neg.f64 (*.f64 b a)) (+.f64 (*.f64 1/6 (*.f64 b (pow.f64 a 3))) (*.f64 (pow.f64 a 5) (*.f64 b -1/120))))
(+.f64 (neg.f64 (*.f64 b a)) (+.f64 (*.f64 1/6 (*.f64 b (pow.f64 a 3))) (*.f64 -1/120 (*.f64 b (pow.f64 a 5)))))
(+.f64 (*.f64 b (neg.f64 a)) (+.f64 (*.f64 b (*.f64 1/6 (pow.f64 a 3))) (*.f64 b (*.f64 -1/120 (pow.f64 a 5)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 a 3) b)) (+.f64 (*.f64 -1/120 (*.f64 (pow.f64 a 5) b)) (+.f64 (*.f64 1/5040 (*.f64 (pow.f64 a 7) b)) (*.f64 -1 (*.f64 a b)))))
(+.f64 (*.f64 1/6 (*.f64 b (pow.f64 a 3))) (+.f64 (*.f64 a (*.f64 -1 b)) (+.f64 (*.f64 1/5040 (*.f64 b (pow.f64 a 7))) (*.f64 -1/120 (*.f64 b (pow.f64 a 5))))))
(+.f64 (*.f64 (pow.f64 a 5) (*.f64 b -1/120)) (+.f64 (+.f64 (neg.f64 (*.f64 b a)) (*.f64 b (*.f64 1/5040 (pow.f64 a 7)))) (*.f64 1/6 (*.f64 b (pow.f64 a 3)))))
(+.f64 (neg.f64 (*.f64 b a)) (+.f64 (+.f64 (*.f64 -1/120 (*.f64 b (pow.f64 a 5))) (*.f64 b (*.f64 1/5040 (pow.f64 a 7)))) (*.f64 1/6 (*.f64 b (pow.f64 a 3)))))
(+.f64 (*.f64 b (*.f64 -1/120 (pow.f64 a 5))) (+.f64 (*.f64 b (*.f64 1/6 (pow.f64 a 3))) (+.f64 (*.f64 b (neg.f64 a)) (*.f64 (pow.f64 a 7) (*.f64 b 1/5040)))))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
1
(+.f64 1 (*.f64 -1 (*.f64 a b)))
(+.f64 1 (*.f64 a (*.f64 -1 b)))
(+.f64 1 (neg.f64 (*.f64 b a)))
(+.f64 1 (*.f64 b (neg.f64 a)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 -1 (*.f64 a b))))
(+.f64 1 (+.f64 (*.f64 a (*.f64 -1 b)) (*.f64 (pow.f64 a 2) -1/2)))
(+.f64 (neg.f64 (*.f64 b a)) (+.f64 1 (*.f64 (pow.f64 a 2) -1/2)))
(+.f64 (*.f64 b (neg.f64 a)) (+.f64 1 (*.f64 (pow.f64 a 2) -1/2)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 a 3) b)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 -1 (*.f64 a b)))))
(+.f64 (*.f64 1/6 (*.f64 b (pow.f64 a 3))) (+.f64 1 (+.f64 (*.f64 a (*.f64 -1 b)) (*.f64 (pow.f64 a 2) -1/2))))
(+.f64 (*.f64 1/6 (*.f64 b (pow.f64 a 3))) (+.f64 (neg.f64 (*.f64 b a)) (+.f64 1 (*.f64 (pow.f64 a 2) -1/2))))
(+.f64 (neg.f64 (*.f64 b a)) (+.f64 (+.f64 1 (*.f64 (pow.f64 a 2) -1/2)) (*.f64 1/6 (*.f64 b (pow.f64 a 3)))))
(+.f64 (*.f64 b (neg.f64 a)) (+.f64 (*.f64 b (*.f64 1/6 (pow.f64 a 3))) (+.f64 1 (*.f64 (pow.f64 a 2) -1/2))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(+.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 0)
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(+.f64 0 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(-.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 0)
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 1)
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(pow.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) 1)
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b))))
(/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r)))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (+.f64 r r)) 2)
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(+.f64 (*.f64 b (neg.f64 (sin.f64 a))) 0)
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(+.f64 0 (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(-.f64 (*.f64 b (neg.f64 (sin.f64 a))) 0)
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(/.f64 (*.f64 b (neg.f64 (sin.f64 a))) 1)
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(/.f64 (*.f64 b (neg.f64 (sin.f64 a))) (/.f64 (*.f64 b (neg.f64 (sin.f64 a))) (*.f64 b (neg.f64 (sin.f64 a)))))
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(/.f64 (*.f64 b (*.f64 (sin.f64 a) -2)) 2)
(/.f64 (*.f64 (sin.f64 a) (*.f64 b -2)) 2)
(pow.f64 (*.f64 b (neg.f64 (sin.f64 a))) 1)
(*.f64 (sin.f64 a) (*.f64 -1 b))
(*.f64 b (neg.f64 (sin.f64 a)))
(-.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 0)
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 1)
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (/.f64 (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (*.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (/.f64 (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(*.f64 (/.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 1 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))) (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 1)
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (/.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(/.f64 (*.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 2) 2)
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))
(pow.f64 (+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a)))) 1)
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 (cos.f64 a) (*.f64 b (neg.f64 (sin.f64 a))))

localize21.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
0.3b
(*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
0.4b
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))
2.5b
(cos.f64 (+.f64 b a))
Compiler

Compiled 87 to 22 computations (74.7% saved)

series3.0ms (0%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
0.0ms
b
@0
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))
0.0ms
a
@0
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))
0.0ms
b
@inf
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))
0.0ms
a
@-inf
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))
0.0ms
b
@-inf
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))

rewrite246.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1194×rational_best-5
1192×rational_best-4
1192×rational_best-2
1192×rational_best-3
1192×rational_best-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01359
113459
257359
3233559
Stop Event
node limit
Counts
3 → 63
Calls
Call 1
Inputs
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (cos.f64 (*.f64 (+.f64 b a) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (*.f64 (+.f64 b a) 2)) (cos.f64 0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (neg.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (fabs.f64 (/.f64 1 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))) (fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))) (fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (fabs.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))) (fabs.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))) (fabs.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (fabs.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (cos.f64 (+.f64 b a))) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (cos.f64 (+.f64 b a))) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (+.f64 b a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 b a)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 b a))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (+.f64 b a))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)))))

simplify290.0ms (1.7%)

Algorithm
egg-herbie
Rules
1088×rational_best-simplify-132
920×rational_best-simplify-44
690×rational_best-simplify-1
668×rational_best-simplify-2
598×rational_best-simplify-80
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02824257
16094105
212364105
333174105
467074105
Stop Event
node limit
Counts
135 → 158
Calls
Call 1
Inputs
(pow.f64 (cos.f64 a) 2)
(+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 -2 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 -2 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))) (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))) (pow.f64 b 2))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 (pow.f64 b 3) (+.f64 (*.f64 (sin.f64 a) (cos.f64 a)) (*.f64 1/3 (*.f64 (sin.f64 a) (cos.f64 a))))) (+.f64 (*.f64 -2 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))) (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))) (pow.f64 b 2)))))
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 2)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 2)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 2)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 2)
(pow.f64 (cos.f64 b) 2)
(+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 -2 (*.f64 (sin.f64 b) (*.f64 a (cos.f64 b)))))
(+.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 -2 (*.f64 (sin.f64 b) (*.f64 a (cos.f64 b))))))
(+.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (pow.f64 (cos.f64 b) 2) (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (*.f64 a (cos.f64 b)))) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 (sin.f64 b) (cos.f64 b)) (*.f64 1/3 (*.f64 (sin.f64 b) (cos.f64 b))))))))
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 2)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 2)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 2)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 2)
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(+.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 0)
(+.f64 0 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(-.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 0)
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1)
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(/.f64 (+.f64 1 (cos.f64 (*.f64 (+.f64 b a) 2))) 2)
(/.f64 (+.f64 (cos.f64 (*.f64 (+.f64 b a) 2)) (cos.f64 0)) 2)
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) 2)) 2)
(pow.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1)
(fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(fabs.f64 (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(fabs.f64 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(fabs.f64 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (neg.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (fabs.f64 (/.f64 1 (cos.f64 (+.f64 b a))))))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))) (fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))) (fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (fabs.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))) (fabs.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))) (fabs.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(fabs.f64 (*.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(fabs.f64 (*.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(fabs.f64 (*.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))
(fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (fabs.f64 (cos.f64 (+.f64 b a)))))
(fabs.f64 (*.f64 (fabs.f64 (cos.f64 (+.f64 b a))) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(fabs.f64 (*.f64 (fabs.f64 (cos.f64 (+.f64 b a))) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(fabs.f64 (-.f64 0 (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(fabs.f64 (-.f64 0 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(+.f64 (cos.f64 (+.f64 b a)) 0)
(+.f64 0 (cos.f64 (+.f64 b a)))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))
(-.f64 (cos.f64 (+.f64 b a)) 0)
(-.f64 0 (neg.f64 (cos.f64 (+.f64 b a))))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(/.f64 (cos.f64 (+.f64 b a)) 1)
(/.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(/.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) 2) 2)
(/.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 b a))) 2) -2)
(pow.f64 (cos.f64 (+.f64 b a)) 1)
(neg.f64 (neg.f64 (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 b a))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
Outputs
(pow.f64 (cos.f64 a) 2)
(+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 -2 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))))
(+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 -2 (*.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (cos.f64 a) (*.f64 -2 (*.f64 (sin.f64 a) b))))
(+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -2 b))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 -2 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))) (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))) (pow.f64 b 2))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 -2 (*.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))) (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 (cos.f64 a) 2) -1)) (pow.f64 b 2))))
(+.f64 (+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (cos.f64 a) (*.f64 -2 (*.f64 (sin.f64 a) b)))) (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2))) (pow.f64 b 2)))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -2 b))) (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2))) (pow.f64 b 2))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 (pow.f64 b 3) (+.f64 (*.f64 (sin.f64 a) (cos.f64 a)) (*.f64 1/3 (*.f64 (sin.f64 a) (cos.f64 a))))) (+.f64 (*.f64 -2 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))) (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))) (pow.f64 b 2)))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 (cos.f64 a) 2) -1)) (pow.f64 b 2)) (+.f64 (*.f64 -2 (*.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))) (*.f64 (pow.f64 b 3) (+.f64 (*.f64 (cos.f64 a) (sin.f64 a)) (*.f64 (sin.f64 a) (*.f64 1/3 (cos.f64 a))))))))
(+.f64 (+.f64 (*.f64 (cos.f64 a) (*.f64 -2 (*.f64 (sin.f64 a) b))) (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2))) (pow.f64 b 2))) (+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 b 3) (*.f64 (sin.f64 a) (+.f64 (*.f64 (cos.f64 a) 1/3) (cos.f64 a))))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2))) (pow.f64 b 2)) (+.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 -2 b))) (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 3) (+.f64 (cos.f64 a) (*.f64 (cos.f64 a) 1/3)))))))
(+.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2))) (pow.f64 b 2)) (+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 (cos.f64 a) (*.f64 -2 (*.f64 (sin.f64 a) b))) (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 3) (+.f64 (cos.f64 a) (*.f64 (cos.f64 a) 1/3)))))))
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 b) 2)
(+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 -2 (*.f64 (sin.f64 b) (*.f64 a (cos.f64 b)))))
(+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 -2 (*.f64 a (*.f64 (cos.f64 b) (sin.f64 b)))))
(+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a (*.f64 -2 (*.f64 (cos.f64 b) (sin.f64 b)))))
(+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (cos.f64 b) (*.f64 -2 (*.f64 a (sin.f64 b)))))
(+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a (*.f64 (cos.f64 b) (*.f64 -2 (sin.f64 b)))))
(+.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 -2 (*.f64 (sin.f64 b) (*.f64 a (cos.f64 b))))))
(+.f64 (*.f64 -2 (*.f64 a (*.f64 (cos.f64 b) (sin.f64 b)))) (+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))))
(+.f64 (*.f64 a (*.f64 -2 (*.f64 (cos.f64 b) (sin.f64 b)))) (+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))))
(+.f64 (+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (cos.f64 b) (*.f64 -2 (*.f64 a (sin.f64 b))))) (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))))
(+.f64 (pow.f64 (cos.f64 b) 2) (+.f64 (*.f64 a (*.f64 (cos.f64 b) (*.f64 -2 (sin.f64 b)))) (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))))
(+.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (pow.f64 (cos.f64 b) 2) (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (*.f64 a (cos.f64 b)))) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 (sin.f64 b) (cos.f64 b)) (*.f64 1/3 (*.f64 (sin.f64 b) (cos.f64 b))))))))
(+.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (pow.f64 (cos.f64 b) 2) (+.f64 (*.f64 -2 (*.f64 a (*.f64 (cos.f64 b) (sin.f64 b)))) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 (cos.f64 b) (sin.f64 b)) (*.f64 1/3 (*.f64 (cos.f64 b) (sin.f64 b))))))))
(+.f64 (+.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a (*.f64 -2 (*.f64 (cos.f64 b) (sin.f64 b))))) (+.f64 (*.f64 (pow.f64 a 3) (*.f64 (sin.f64 b) (+.f64 (*.f64 1/3 (cos.f64 b)) (cos.f64 b)))) (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))))
(+.f64 (pow.f64 (cos.f64 b) 2) (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 (cos.f64 b) (*.f64 -2 (*.f64 a (sin.f64 b)))) (*.f64 (pow.f64 a 3) (*.f64 (cos.f64 b) (+.f64 (*.f64 1/3 (sin.f64 b)) (sin.f64 b)))))))
(+.f64 (pow.f64 (cos.f64 b) 2) (+.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) (+.f64 (cos.f64 b) (*.f64 1/3 (cos.f64 b))))) (+.f64 (*.f64 a (*.f64 (cos.f64 b) (*.f64 -2 (sin.f64 b)))) (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))))))
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 2)
(pow.f64 (cos.f64 (+.f64 a b)) 2)
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (*.f64 b -1)))
(+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))
(+.f64 (cos.f64 a) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) (*.f64 b -1)) (*.f64 (cos.f64 a) (*.f64 -1/2 (pow.f64 b 2)))))
(+.f64 (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b))) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2)))
(+.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) (neg.f64 b)) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) (*.f64 b -1)) (+.f64 (*.f64 (cos.f64 a) (*.f64 -1/2 (pow.f64 b 2))) (*.f64 (sin.f64 a) (*.f64 1/6 (pow.f64 b 3))))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2)) (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 (pow.f64 b 3) 1/6)))))
(+.f64 (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2)) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 (pow.f64 b 3) 1/6)))))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 a (*.f64 -1 b)))
(cos.f64 (+.f64 a b))
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(+.f64 (cos.f64 b) (*.f64 -1 (*.f64 a (sin.f64 b))))
(+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 a (sin.f64 b))) (+.f64 (cos.f64 b) (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2)))))
(+.f64 (*.f64 (cos.f64 b) (*.f64 -1/2 (pow.f64 a 2))) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (sin.f64 b) (neg.f64 a)) (*.f64 (cos.f64 b) (*.f64 (pow.f64 a 2) -1/2))))
(+.f64 (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a))) (*.f64 (cos.f64 b) (*.f64 (pow.f64 a 2) -1/2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))))
(+.f64 (*.f64 -1 (*.f64 a (sin.f64 b))) (+.f64 (cos.f64 b) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2))) (*.f64 (sin.f64 b) (*.f64 1/6 (pow.f64 a 3))))))
(+.f64 (+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (*.f64 -1/2 (pow.f64 a 2)))) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (cos.f64 b) (*.f64 (pow.f64 a 2) -1/2)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6)))))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (+.f64 a b))
(cos.f64 (-.f64 b (*.f64 -1 a)))
(cos.f64 (+.f64 a b))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 b (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))))))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (neg.f64 (*.f64 (pow.f64 b 4) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3)))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (neg.f64 (*.f64 (pow.f64 b 4) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3)))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3)) (neg.f64 (pow.f64 b 4)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))) (neg.f64 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))) (*.f64 (pow.f64 a 3) (neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(+.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 0)
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(+.f64 0 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(-.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 0)
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1)
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(/.f64 (+.f64 1 (cos.f64 (*.f64 (+.f64 b a) 2))) 2)
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(/.f64 (+.f64 (cos.f64 (*.f64 (+.f64 b a) 2)) (cos.f64 0)) 2)
(/.f64 (+.f64 (cos.f64 (*.f64 2 (+.f64 a b))) (cos.f64 0)) 2)
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) 2)) 2)
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(pow.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1)
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (neg.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (fabs.f64 (/.f64 1 (cos.f64 (+.f64 b a))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))) (fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))) (fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (fabs.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))) (fabs.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))) (fabs.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (cos.f64 (+.f64 b a)) (fabs.f64 (cos.f64 (+.f64 b a)))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (fabs.f64 (cos.f64 (+.f64 b a))) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (fabs.f64 (cos.f64 (+.f64 b a))) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (-.f64 0 (neg.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(fabs.f64 (-.f64 0 (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (fabs.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))
(+.f64 (cos.f64 (+.f64 b a)) 0)
(cos.f64 (+.f64 a b))
(+.f64 0 (cos.f64 (+.f64 b a)))
(cos.f64 (+.f64 a b))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))
(cos.f64 (+.f64 a b))
(-.f64 (cos.f64 (+.f64 b a)) 0)
(cos.f64 (+.f64 a b))
(-.f64 0 (neg.f64 (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
(cos.f64 (+.f64 a b))
(-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(-.f64 (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) 2)) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (*.f64 2 (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (cos.f64 (+.f64 b a)) 1)
(cos.f64 (+.f64 a b))
(/.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(/.f64 (cos.f64 (+.f64 b a)) (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(/.f64 (cos.f64 (+.f64 a b)) (/.f64 (/.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b))) (/.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))))
(*.f64 (cos.f64 (+.f64 a b)) (*.f64 (/.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b))) (/.f64 (cos.f64 (+.f64 a b)) (cos.f64 (+.f64 a b)))))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) 2) 2)
(cos.f64 (+.f64 a b))
(/.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 b a))) 2) -2)
(cos.f64 (+.f64 a b))
(pow.f64 (cos.f64 (+.f64 b a)) 1)
(cos.f64 (+.f64 a b))
(neg.f64 (neg.f64 (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 b a))
(cos.f64 (+.f64 a b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))

eval874.0ms (5.1%)

Compiler

Compiled 25568 to 10582 computations (58.6% saved)

prune496.0ms (2.9%)

Pruning

33 alts after pruning (29 fresh and 4 done)

PrunedKeptTotal
New79422816
Fresh3710
Picked101
Done044
Total79833831
Error
0.1b
Counts
831 → 33
Alt Table
Click to see full alt table
StatusErrorProgram
0.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
15.7b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
27.2b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
29.6b
(/.f64 (*.f64 r b) (cos.f64 a))
42.6b
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
38.1b
(*.f64 (sin.f64 b) r)
0.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
23.2b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) a))))
22.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
26.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
26.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 b) (sin.f64 a)))))
28.6b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b))) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2)))))
28.7b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))))
28.4b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))))
41.0b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
15.8b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))
15.8b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
26.5b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 b) 2))))
26.1b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 a) 2))))
16.1b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 1 (cos.f64 (*.f64 (+.f64 b a) 2))) 2))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 (+.f64 b a))))))
27.3b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 b)))))
27.1b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
27.3b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 b)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
27.2b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
27.1b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
29.6b
(*.f64 r (/.f64 b (cos.f64 a)))
29.6b
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
41.6b
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
42.4b
(*.f64 r (*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))))))
61.8b
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))
41.1b
(*.f64 r b)
Compiler

Compiled 1194 to 702 computations (41.2% saved)

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 a) (cos.f64 b))
0.1b
(*.f64 (sin.f64 b) r)
0.2b
(*.f64 (sin.f64 a) (sin.f64 b))
0.2b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
Compiler

Compiled 55 to 12 computations (78.2% saved)

series6.0ms (0%)

Counts
4 → 28
Calls

27 calls:

TimeVariablePointExpression
1.0ms
a
@0
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
1.0ms
b
@-inf
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
1.0ms
a
@-inf
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
0.0ms
b
@0
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
0.0ms
r
@inf
(*.f64 (sin.f64 b) r)

rewrite64.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1236×rational_best-5
1234×rational_best-4
1234×rational_best-2
1234×rational_best-3
1234×rational_best-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01568
114368
256968
3254268
Stop Event
node limit
Counts
4 → 43
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) r)
(*.f64 (cos.f64 a) (cos.f64 b))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 (-.f64 0 (neg.f64 a)) b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 b (-.f64 0 (neg.f64 a))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 b) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 b) r))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 b) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) (+.f64 r r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 b) r) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (/.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1)))))

simplify254.0ms (1.5%)

Algorithm
egg-herbie
Rules
1452×rational_best-simplify-45
996×rational_best-simplify-2
852×rational_best-simplify-1
746×rational_best-simplify-132
628×rational_best-simplify-50
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02502995
15012799
29302705
320592703
438482703
572722703
Stop Event
node limit
Counts
71 → 154
Calls
Call 1
Inputs
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))))) (pow.f64 b 4))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(*.f64 (sin.f64 b) a)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 (sin.f64 b) a))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 (sin.f64 b) a)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 (sin.f64 b) a))))
(*.f64 (sin.f64 a) b)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 (sin.f64 a) b))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))))))
(*.f64 r b)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) r)) (*.f64 r b))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) r)) (+.f64 (*.f64 r b) (*.f64 1/120 (*.f64 (pow.f64 b 5) r))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) r)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 b 7) r)) (+.f64 (*.f64 r b) (*.f64 1/120 (*.f64 (pow.f64 b 5) r)))))
(cos.f64 b)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (cos.f64 b))) (cos.f64 b)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 a 6) (cos.f64 b))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (cos.f64 b))) (cos.f64 b))))
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))
(+.f64 (*.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4))) (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 a) (pow.f64 b 6))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4))) (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 0)
(+.f64 0 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))
(-.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 0)
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 1)
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))
(*.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(*.f64 (/.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(pow.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 1)
(+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)
(+.f64 0 (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)
(/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)
(/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) 2)
(/.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 2)) 2)
(/.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 b a))) 2)
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 (-.f64 0 (neg.f64 a)) b))) 2)
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 b (-.f64 0 (neg.f64 a))))) 2)
(pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)
(+.f64 (*.f64 (sin.f64 b) r) 0)
(+.f64 0 (*.f64 (sin.f64 b) r))
(-.f64 (*.f64 (sin.f64 b) r) 0)
(/.f64 (*.f64 (sin.f64 b) r) 1)
(/.f64 (*.f64 (sin.f64 b) r) (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 b) r)))
(/.f64 (*.f64 (sin.f64 b) (+.f64 r r)) 2)
(pow.f64 (*.f64 (sin.f64 b) r) 1)
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 0)
(+.f64 0 (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 0)
(/.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1)
(/.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (/.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 2)
(/.f64 (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) 2)) 2)
(/.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 b a))) 2)
(pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1)
Outputs
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/2) (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/2) (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/2) (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/2) (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))))) (pow.f64 b 4))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/2) (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))) (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/2) (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) 2))))) (*.f64 -1 (pow.f64 b 4))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/2) (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))) (neg.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/2) (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) 2)) -1/3)) (pow.f64 b 4))))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/2) (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) 2)) -1/3)) (neg.f64 (pow.f64 b 4))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/2) (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (/.f64 (*.f64 a (*.f64 r (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (/.f64 (*.f64 r (*.f64 a (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))) (/.f64 (*.f64 a (*.f64 r (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (+.f64 (/.f64 (*.f64 r (*.f64 a (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2)) (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))))))
(+.f64 (+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (/.f64 (*.f64 r (*.f64 a (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))))
(+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (+.f64 (/.f64 (*.f64 r (*.f64 a (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(+.f64 (/.f64 (*.f64 a (*.f64 r (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (cos.f64 b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))) (*.f64 1/6 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))))))))))
(+.f64 (/.f64 (*.f64 r (*.f64 a (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) -1/3))) (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)))))))))
(+.f64 (+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (/.f64 (*.f64 r (*.f64 a (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(+.f64 (+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (/.f64 (*.f64 r (*.f64 a (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2))) (neg.f64 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) -1/3))))))
(+.f64 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b)) (+.f64 (/.f64 (*.f64 r (*.f64 a (pow.f64 (sin.f64 b) 2))) (pow.f64 (cos.f64 b) 2)) (neg.f64 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) -1/3)))))))
(*.f64 (sin.f64 b) a)
(*.f64 a (sin.f64 b))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 (sin.f64 b) a))
(+.f64 (*.f64 a (sin.f64 b)) (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(*.f64 (sin.f64 b) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (+.f64 a (*.f64 -1/6 (pow.f64 a 3))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 (sin.f64 b) a)))
(+.f64 (*.f64 a (sin.f64 b)) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) a)))
(*.f64 (sin.f64 b) (+.f64 (+.f64 (*.f64 1/120 (pow.f64 a 5)) (*.f64 -1/6 (pow.f64 a 3))) a))
(*.f64 (sin.f64 b) (+.f64 (*.f64 1/120 (pow.f64 a 5)) (+.f64 a (*.f64 -1/6 (pow.f64 a 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 (sin.f64 b) a))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (+.f64 (*.f64 a (sin.f64 b)) (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)))) (*.f64 -1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7)))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 1/120 (pow.f64 a 5)) a)) (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) (*.f64 -1/5040 (pow.f64 a 7)))))
(*.f64 (sin.f64 b) (+.f64 (+.f64 (*.f64 -1/6 (pow.f64 a 3)) (*.f64 -1/5040 (pow.f64 a 7))) (+.f64 a (*.f64 1/120 (pow.f64 a 5)))))
(*.f64 (sin.f64 b) (+.f64 a (+.f64 (*.f64 1/120 (pow.f64 a 5)) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) (*.f64 -1/5040 (pow.f64 a 7))))))
(*.f64 (sin.f64 b) (+.f64 (*.f64 1/120 (pow.f64 a 5)) (+.f64 (*.f64 -1/5040 (pow.f64 a 7)) (+.f64 a (*.f64 -1/6 (pow.f64 a 3))))))
(*.f64 (sin.f64 a) b)
(*.f64 b (sin.f64 a))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 (sin.f64 a) b))
(+.f64 (*.f64 b (sin.f64 a)) (*.f64 (sin.f64 a) (*.f64 -1/6 (pow.f64 b 3))))
(*.f64 (sin.f64 a) (+.f64 (*.f64 (pow.f64 b 3) -1/6) b))
(*.f64 (sin.f64 a) (+.f64 b (*.f64 (pow.f64 b 3) -1/6)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)))))
(+.f64 (*.f64 (sin.f64 a) (*.f64 -1/6 (pow.f64 b 3))) (+.f64 (*.f64 b (sin.f64 a)) (*.f64 (sin.f64 a) (*.f64 1/120 (pow.f64 b 5)))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (*.f64 (pow.f64 b 3) -1/6) b)) (*.f64 (pow.f64 b 5) (*.f64 1/120 (sin.f64 a))))
(*.f64 (sin.f64 a) (+.f64 (*.f64 1/120 (pow.f64 b 5)) (+.f64 b (*.f64 (pow.f64 b 3) -1/6))))
(*.f64 (sin.f64 a) (+.f64 b (+.f64 (*.f64 1/120 (pow.f64 b 5)) (*.f64 (pow.f64 b 3) -1/6))))
(*.f64 (sin.f64 a) (+.f64 (*.f64 (pow.f64 b 3) -1/6) (+.f64 b (*.f64 1/120 (pow.f64 b 5)))))
(+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))))))
(+.f64 (+.f64 (*.f64 b (sin.f64 a)) (*.f64 (sin.f64 a) (*.f64 1/120 (pow.f64 b 5)))) (+.f64 (*.f64 (sin.f64 a) (*.f64 -1/6 (pow.f64 b 3))) (*.f64 (sin.f64 a) (*.f64 -1/5040 (pow.f64 b 7)))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b)) (*.f64 (sin.f64 a) (+.f64 (*.f64 -1/5040 (pow.f64 b 7)) (*.f64 (pow.f64 b 3) -1/6))))
(*.f64 (sin.f64 a) (+.f64 (+.f64 (*.f64 (pow.f64 b 3) -1/6) (*.f64 -1/5040 (pow.f64 b 7))) (+.f64 b (*.f64 1/120 (pow.f64 b 5)))))
(*.f64 (sin.f64 a) (+.f64 (*.f64 (pow.f64 b 3) -1/6) (+.f64 (*.f64 -1/5040 (pow.f64 b 7)) (+.f64 b (*.f64 1/120 (pow.f64 b 5))))))
(*.f64 (sin.f64 a) (+.f64 (*.f64 -1/5040 (pow.f64 b 7)) (+.f64 (*.f64 (pow.f64 b 3) -1/6) (+.f64 b (*.f64 1/120 (pow.f64 b 5))))))
(*.f64 r b)
(*.f64 b r)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) r)) (*.f64 r b))
(+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (*.f64 -1/6 r)))
(+.f64 (*.f64 b r) (*.f64 r (*.f64 (pow.f64 b 3) -1/6)))
(*.f64 r (+.f64 b (*.f64 (pow.f64 b 3) -1/6)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) r)) (+.f64 (*.f64 r b) (*.f64 1/120 (*.f64 (pow.f64 b 5) r))))
(+.f64 (*.f64 (pow.f64 b 3) (*.f64 -1/6 r)) (+.f64 (*.f64 b r) (*.f64 1/120 (*.f64 r (pow.f64 b 5)))))
(+.f64 (*.f64 b r) (+.f64 (*.f64 1/120 (*.f64 r (pow.f64 b 5))) (*.f64 r (*.f64 (pow.f64 b 3) -1/6))))
(+.f64 (*.f64 r (+.f64 b (*.f64 (pow.f64 b 3) -1/6))) (*.f64 (pow.f64 b 5) (*.f64 r 1/120)))
(+.f64 (*.f64 b r) (*.f64 r (+.f64 (*.f64 1/120 (pow.f64 b 5)) (*.f64 (pow.f64 b 3) -1/6))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) r)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 b 7) r)) (+.f64 (*.f64 r b) (*.f64 1/120 (*.f64 (pow.f64 b 5) r)))))
(+.f64 (*.f64 (pow.f64 b 3) (*.f64 -1/6 r)) (+.f64 (+.f64 (*.f64 b r) (*.f64 1/120 (*.f64 r (pow.f64 b 5)))) (*.f64 -1/5040 (*.f64 r (pow.f64 b 7)))))
(+.f64 (*.f64 r (*.f64 (pow.f64 b 3) -1/6)) (+.f64 (+.f64 (*.f64 b r) (*.f64 1/120 (*.f64 r (pow.f64 b 5)))) (*.f64 r (*.f64 -1/5040 (pow.f64 b 7)))))
(+.f64 (*.f64 r (+.f64 b (*.f64 (pow.f64 b 3) -1/6))) (*.f64 r (+.f64 (*.f64 -1/5040 (pow.f64 b 7)) (*.f64 1/120 (pow.f64 b 5)))))
(+.f64 (*.f64 r (+.f64 b (*.f64 -1/5040 (pow.f64 b 7)))) (*.f64 r (+.f64 (*.f64 1/120 (pow.f64 b 5)) (*.f64 (pow.f64 b 3) -1/6))))
(+.f64 (*.f64 r (+.f64 b (*.f64 (pow.f64 b 3) -1/6))) (*.f64 r (+.f64 (*.f64 1/120 (pow.f64 b 5)) (*.f64 -1/5040 (pow.f64 b 7)))))
(cos.f64 b)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))
(+.f64 (cos.f64 b) (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (cos.f64 b))) (cos.f64 b)))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2))) (+.f64 (cos.f64 b) (*.f64 1/24 (*.f64 (cos.f64 b) (pow.f64 a 4)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2))) (+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (*.f64 1/24 (pow.f64 a 4)))))
(+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (+.f64 (*.f64 1/24 (pow.f64 a 4)) (*.f64 -1/2 (pow.f64 a 2)))))
(+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 1/24 (pow.f64 a 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 a 6) (cos.f64 b))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (cos.f64 b))) (cos.f64 b))))
(+.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2))) (+.f64 (cos.f64 b) (*.f64 1/24 (*.f64 (cos.f64 b) (pow.f64 a 4))))) (*.f64 -1/720 (*.f64 (cos.f64 b) (pow.f64 a 6))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 b) (pow.f64 a 2))) (+.f64 (+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (*.f64 1/24 (pow.f64 a 4)))) (*.f64 -1/720 (*.f64 (cos.f64 b) (pow.f64 a 6)))))
(+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 1/24 (pow.f64 a 4)) (*.f64 -1/2 (pow.f64 a 2)))) (+.f64 (cos.f64 b) (*.f64 (pow.f64 a 6) (*.f64 (cos.f64 b) -1/720))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 b) (pow.f64 a 4))) (*.f64 (cos.f64 b) (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 -1/720 (pow.f64 a 6))))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (cos.f64 b) (*.f64 1/24 (pow.f64 a 4))) (*.f64 (cos.f64 b) (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 -1/720 (pow.f64 a 6))))))
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))
(+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2)))
(+.f64 (*.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4))) (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))) (+.f64 (cos.f64 a) (*.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))) (+.f64 (cos.f64 a) (*.f64 (pow.f64 b 4) (*.f64 1/24 (cos.f64 a)))))
(+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (+.f64 (*.f64 (pow.f64 b 4) 1/24) (*.f64 (pow.f64 b 2) -1/2))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 a) (pow.f64 b 6))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4))) (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))))
(+.f64 (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4))) (*.f64 (cos.f64 a) (*.f64 -1/720 (pow.f64 b 6)))))
(+.f64 (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))) (*.f64 (cos.f64 a) (+.f64 (*.f64 -1/720 (pow.f64 b 6)) (*.f64 (pow.f64 b 4) 1/24))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2)) (*.f64 (cos.f64 a) (+.f64 (*.f64 (pow.f64 b 4) 1/24) (*.f64 -1/720 (pow.f64 b 6))))))
(+.f64 (+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2))) (*.f64 (cos.f64 a) (+.f64 (*.f64 (pow.f64 b 4) 1/24) (*.f64 -1/720 (pow.f64 b 6)))))
(+.f64 (cos.f64 a) (+.f64 (*.f64 (cos.f64 a) (*.f64 -1/720 (pow.f64 b 6))) (*.f64 (cos.f64 a) (+.f64 (*.f64 (pow.f64 b 4) 1/24) (*.f64 (pow.f64 b 2) -1/2)))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 0)
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(+.f64 0 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(-.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 0)
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 1)
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(pow.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) 1)
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)
(*.f64 (sin.f64 a) (sin.f64 b))
(+.f64 0 (*.f64 (sin.f64 b) (sin.f64 a)))
(*.f64 (sin.f64 a) (sin.f64 b))
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (/.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) 2)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 2)) 2)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (-.f64 (cos.f64 (-.f64 b a)) (cos.f64 (+.f64 b a))) 2)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 (-.f64 0 (neg.f64 a)) b))) 2)
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 (/.f64 (PI.f64) 2) b) (-.f64 (/.f64 (PI.f64) 2) a))) (cos.f64 (-.f64 b (-.f64 0 (neg.f64 a))))) 2)
(*.f64 (sin.f64 a) (sin.f64 b))
(pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)
(*.f64 (sin.f64 a) (sin.f64 b))
(+.f64 (*.f64 (sin.f64 b) r) 0)
(*.f64 r (sin.f64 b))
(+.f64 0 (*.f64 (sin.f64 b) r))
(*.f64 r (sin.f64 b))
(-.f64 (*.f64 (sin.f64 b) r) 0)
(*.f64 r (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) 1)
(*.f64 r (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 b) r)))
(*.f64 r (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) (+.f64 r r)) 2)
(*.f64 r (sin.f64 b))
(pow.f64 (*.f64 (sin.f64 b) r) 1)
(*.f64 r (sin.f64 b))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 0)
(*.f64 (cos.f64 a) (cos.f64 b))
(+.f64 0 (*.f64 (cos.f64 a) (cos.f64 b)))
(*.f64 (cos.f64 a) (cos.f64 b))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 0)
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1)
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (/.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 2)
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) 2)) 2)
(*.f64 (cos.f64 a) (cos.f64 b))
(/.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 b a))) 2)
(*.f64 (cos.f64 a) (cos.f64 b))
(pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1)
(*.f64 (cos.f64 a) (cos.f64 b))

localize4.0ms (0%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sin.f64 b) r)
0.1b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
Compiler

Compiled 20 to 7 computations (65% saved)

series1.0ms (0%)

Counts
1 → 4
Calls

6 calls:

TimeVariablePointExpression
0.0ms
b
@0
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
0.0ms
r
@inf
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
0.0ms
r
@-inf
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
0.0ms
b
@inf
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
0.0ms
b
@-inf
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))

rewrite364.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
1158×rational_best-simplify-57
706×rational_best-simplify-43
628×rational_best-5
626×rational_best-4
626×rational_best-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
18121
230921
3130921
4578621
Stop Event
node limit
Counts
1 → 20
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))))

simplify284.0ms (1.6%)

Algorithm
egg-herbie
Rules
1102×rational_best-simplify-2
882×rational_best-simplify-80
786×rational_best-simplify-78
732×rational_best-simplify-94
648×rational_best-simplify-129
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
081814
1157730
2284706
31051706
42209706
54100706
67848706
Stop Event
node limit
Counts
24 → 38
Calls
Call 1
Inputs
(*.f64 r b)
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (*.f64 r b))
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r))))))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 r) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))) (+.f64 (*.f64 -1/720 r) (*.f64 1/24 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))) (pow.f64 b 7)) (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 0)
(+.f64 0 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(-.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 0)
(-.f64 0 (neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 1)
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(*.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(*.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(*.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(*.f64 (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))
(*.f64 (/.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(*.f64 (/.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(pow.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 1)
(neg.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
Outputs
(*.f64 r b)
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (*.f64 r b))
(+.f64 (*.f64 r b) (*.f64 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2)) (pow.f64 b 3)))
(+.f64 (*.f64 r b) (*.f64 (*.f64 r 1/3) (pow.f64 b 3)))
(+.f64 (*.f64 r b) (*.f64 r (*.f64 (pow.f64 b 3) 1/3)))
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r))))))))
(+.f64 (*.f64 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2)) (pow.f64 b 3)) (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2))))))))
(+.f64 (+.f64 (*.f64 r b) (*.f64 (*.f64 r 1/3) (pow.f64 b 3))) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (*.f64 r 1/3))))))
(+.f64 (*.f64 r b) (+.f64 (*.f64 r (*.f64 (pow.f64 b 3) 1/3)) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6))))))
(+.f64 (+.f64 (*.f64 r b) (*.f64 r (*.f64 (pow.f64 b 3) 1/3))) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 r) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))) (+.f64 (*.f64 -1/720 r) (*.f64 1/24 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))) (pow.f64 b 7)) (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/120 r) (+.f64 (*.f64 1/24 r) (*.f64 -1/2 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)))))))))
(+.f64 (*.f64 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2)) (pow.f64 b 3)) (+.f64 (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2))))))) (*.f64 (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2)))))) (+.f64 (*.f64 r -1/720) (*.f64 (-.f64 (*.f64 r -1/6) (*.f64 r -1/2)) 1/24)))) (pow.f64 b 7))))
(+.f64 (*.f64 (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (*.f64 r 1/3))))) (+.f64 (*.f64 r -1/720) (*.f64 (*.f64 r 1/3) 1/24)))) (pow.f64 b 7)) (+.f64 (+.f64 (*.f64 r b) (*.f64 (*.f64 r 1/3) (pow.f64 b 3))) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 -1/2 (*.f64 r 1/3)))))))
(+.f64 (*.f64 r (*.f64 (pow.f64 b 3) 1/3)) (+.f64 (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6))))) (*.f64 (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (+.f64 (*.f64 r -1/720) (*.f64 r 1/72)))) (pow.f64 b 7))))
(+.f64 (+.f64 (*.f64 r b) (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6))))) (+.f64 (*.f64 r (*.f64 (pow.f64 b 3) 1/3)) (*.f64 (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (+.f64 (*.f64 r -1/720) (*.f64 r 1/72)))) (pow.f64 b 7))))
(+.f64 (*.f64 r b) (+.f64 (*.f64 r (*.f64 (pow.f64 b 3) 1/3)) (+.f64 (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (*.f64 (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (+.f64 (*.f64 r -1/720) (*.f64 r 1/72)))) (pow.f64 b 7)))))
(+.f64 (+.f64 (*.f64 r b) (*.f64 r (*.f64 (pow.f64 b 3) 1/3))) (+.f64 (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (*.f64 (-.f64 (*.f64 r -1/5040) (+.f64 (*.f64 -1/2 (-.f64 (*.f64 r 1/120) (+.f64 (*.f64 r 1/24) (*.f64 r -1/6)))) (+.f64 (*.f64 r -1/720) (*.f64 r 1/72)))) (pow.f64 b 7))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 0)
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(+.f64 0 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(-.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 0)
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(-.f64 0 (neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 1)
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(pow.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) 1)
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))
(neg.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(/.f64 (*.f64 r (sin.f64 b)) (cos.f64 b))

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 b) (cos.f64 a))
0.1b
(*.f64 (sin.f64 a) b)
0.2b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
0.2b
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b)))
Compiler

Compiled 61 to 12 computations (80.3% saved)

series9.0ms (0.1%)

Counts
3 → 64
Calls

21 calls:

TimeVariablePointExpression
1.0ms
b
@inf
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
1.0ms
b
@inf
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b)))
1.0ms
a
@0
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
1.0ms
a
@0
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b)))
1.0ms
b
@-inf
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))

rewrite67.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1172×rational_best-5
1170×rational_best-4
1170×rational_best-2
1170×rational_best-3
1170×rational_best-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01599
113999
254699
3238099
Stop Event
node limit
Counts
3 → 30
Calls
Call 1
Inputs
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b)))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
(*.f64 (sin.f64 a) b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (+.f64 r r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b (sin.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 b (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 b (sin.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (sin.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (sin.f64 a)) (/.f64 (*.f64 b (sin.f64 a)) (*.f64 b (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 a) (+.f64 b b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 b (sin.f64 a)) 1)))))

simplify234.0ms (1.4%)

Algorithm
egg-herbie
Rules
1196×rational_best-simplify-2
754×rational_best-simplify-49
744×rational_best-simplify-50
726×rational_best-simplify-80
682×rational_best-simplify-1
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02666694
15656470
29876430
320926416
435236412
560626412
Stop Event
node limit
Counts
94 → 144
Calls
Call 1
Inputs
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (pow.f64 b 4))) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 (cos.f64 b) 3))) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 (cos.f64 b) 3))) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) (*.f64 a b)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 b 2)) (pow.f64 (cos.f64 b) 3)))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) (*.f64 a b)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 b 2)) (pow.f64 (cos.f64 b) 3)))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 b) b) (pow.f64 (cos.f64 b) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) b) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 b (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 b 2)) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)))) (pow.f64 a 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 a b)) (pow.f64 (cos.f64 b) 2)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)))) (pow.f64 b 4))))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (pow.f64 (cos.f64 b) 3) r))) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (pow.f64 (cos.f64 b) 3) r))) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 b r))) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (pow.f64 a 2))) (/.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 r b))) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (pow.f64 a 2))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 b) (*.f64 b r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 r b)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) b) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 r b))) (pow.f64 (cos.f64 b) 2)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 -1/6 (*.f64 (pow.f64 a 3) b)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 a 5) b)) (*.f64 -1/6 (*.f64 (pow.f64 a 3) b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 a 5) b)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 a 3) b)) (*.f64 -1/5040 (*.f64 (pow.f64 a 7) b)))))
(+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 0)
(+.f64 0 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))
(-.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 0)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 1)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))
(*.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))
(pow.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 1)
(+.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 0)
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 0)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 1)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (+.f64 r r)) 2)
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 1)
(+.f64 (*.f64 b (sin.f64 a)) 0)
(+.f64 0 (*.f64 b (sin.f64 a)))
(-.f64 (*.f64 b (sin.f64 a)) 0)
(/.f64 (*.f64 b (sin.f64 a)) 1)
(/.f64 (*.f64 b (sin.f64 a)) (/.f64 (*.f64 b (sin.f64 a)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 a) (+.f64 b b)) 2)
(pow.f64 (*.f64 b (sin.f64 a)) 1)
Outputs
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3))))
(+.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (pow.f64 b 4))) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 1/6 (/.f64 1 (cos.f64 a))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3))) (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (*.f64 -1 (pow.f64 b 4)))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3))) (neg.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (pow.f64 b 4)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (neg.f64 (pow.f64 b 4)))) (/.f64 b (cos.f64 a))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (neg.f64 (pow.f64 b 4))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (neg.f64 (pow.f64 b 4))) (+.f64 (/.f64 b (cos.f64 a)) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (cos.f64 a))) (+.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/6) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3)))))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))
(neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))
(*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (sin.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (sin.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 (cos.f64 b) 3))) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (+.f64 (*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (pow.f64 (*.f64 b (sin.f64 a)) 4)))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3))))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (pow.f64 (*.f64 b (sin.f64 a)) 4)))) (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (sin.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (pow.f64 (*.f64 b (sin.f64 a)) 4))))))
(neg.f64 (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (pow.f64 (*.f64 b (sin.f64 a)) 4))))))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))
(neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))
(*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (sin.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (sin.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 (cos.f64 b) 3))) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))) (*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (+.f64 (*.f64 -1 (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (pow.f64 (*.f64 b (sin.f64 a)) 4)))))
(+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3))))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (pow.f64 (*.f64 b (sin.f64 a)) 4)))) (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (sin.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (pow.f64 (*.f64 b (sin.f64 a)) 4))))))
(neg.f64 (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (pow.f64 (*.f64 b (sin.f64 a)) 4))))))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) (*.f64 a b)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 b (*.f64 a (sin.f64 b))) (pow.f64 (cos.f64 b) 2)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 b 2)) (pow.f64 (cos.f64 b) 3)))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) (*.f64 a b)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3)))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (pow.f64 (cos.f64 b) 2)) (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 b (*.f64 a (sin.f64 b))) (pow.f64 (cos.f64 b) 2)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3)))) (neg.f64 (pow.f64 a 2)))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (/.f64 (*.f64 b (*.f64 a (sin.f64 b))) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3)))) (neg.f64 (pow.f64 a 2)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 b 2)) (pow.f64 (cos.f64 b) 3)))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 b) b) (pow.f64 (cos.f64 b) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) b) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 b (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (pow.f64 b 2)) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)))) (pow.f64 a 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 a b)) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3)))))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (/.f64 (*.f64 b (sin.f64 b)) (pow.f64 (cos.f64 b) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 b (sin.f64 b)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 b (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)))) (pow.f64 a 3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (pow.f64 (cos.f64 b) 2)) (neg.f64 (*.f64 (+.f64 (/.f64 (*.f64 b (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 b (sin.f64 b)) (pow.f64 (cos.f64 b) 2)) -1/3)) (pow.f64 a 3)))) (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (/.f64 (*.f64 b (*.f64 a (sin.f64 b))) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 (+.f64 (/.f64 (*.f64 b (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 b (sin.f64 b)) (pow.f64 (cos.f64 b) 2)) -1/3)) (neg.f64 (pow.f64 a 3))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3)))) (neg.f64 (pow.f64 a 2))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 b a)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3)))))) (*.f64 (+.f64 (/.f64 (*.f64 b (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 b (sin.f64 b)) (pow.f64 (cos.f64 b) 2)) -1/3)) (neg.f64 (pow.f64 a 3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 b (*.f64 a (sin.f64 b))) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3)))) (neg.f64 (pow.f64 a 2))) (*.f64 (+.f64 (/.f64 (*.f64 b (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (neg.f64 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 b)) (pow.f64 (cos.f64 b) 3))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 b (sin.f64 b)) (pow.f64 (cos.f64 b) 2)) -1/3)) (neg.f64 (pow.f64 a 3))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3))))))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)))) (pow.f64 b 4))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)))))))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (neg.f64 (*.f64 (pow.f64 b 4) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))))))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (+.f64 (*.f64 -1/2 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)))) (neg.f64 (pow.f64 b 4))))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))))
(neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))) (pow.f64 (*.f64 b (sin.f64 a)) 3))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2)))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (pow.f64 (cos.f64 b) 3) r))) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))))))
(+.f64 (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (pow.f64 (cos.f64 a) 3) r))) (pow.f64 (*.f64 b (sin.f64 a)) 4)))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2)))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3))) (pow.f64 (*.f64 b (sin.f64 a)) 4)))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3))))))
(neg.f64 (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3))))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))))
(neg.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))) (pow.f64 (*.f64 b (sin.f64 a)) 3))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2)))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) (*.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 2)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (pow.f64 (cos.f64 b) 3) r))) (*.f64 (pow.f64 (sin.f64 a) 4) (pow.f64 b 4)))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 3)))))))
(+.f64 (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) r))) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (pow.f64 (cos.f64 a) 3) r))) (pow.f64 (*.f64 b (sin.f64 a)) 4)))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2)))))
(*.f64 -1 (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3))) (pow.f64 (*.f64 b (sin.f64 a)) 4)))))
(*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2))))))
(neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3))))))
(neg.f64 (+.f64 (/.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 b) (*.f64 (cos.f64 b) r))) (pow.f64 (*.f64 b (sin.f64 a)) 2)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) r)) (pow.f64 (*.f64 b (sin.f64 a)) 4)) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 b (sin.f64 a))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) r)) (pow.f64 (*.f64 b (sin.f64 a)) 3))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 b r))) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (sin.f64 b) (*.f64 b (*.f64 a r))) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 a (*.f64 (sin.f64 b) (*.f64 b r))) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 b (*.f64 (sin.f64 b) (*.f64 a r))) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (pow.f64 a 2))) (/.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 r b))) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) (*.f64 b (*.f64 a r))) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) (*.f64 b (*.f64 a r))) (pow.f64 (cos.f64 b) 2))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 a (*.f64 (sin.f64 b) (*.f64 b r))) (pow.f64 (cos.f64 b) 2))) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (neg.f64 (pow.f64 a 2))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (neg.f64 (pow.f64 a 2))) (/.f64 (*.f64 b (*.f64 (sin.f64 b) (*.f64 a r))) (pow.f64 (cos.f64 b) 2))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 b (*.f64 (sin.f64 b) (*.f64 a r))) (pow.f64 (cos.f64 b) 2))) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (neg.f64 (pow.f64 a 2))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) (pow.f64 a 2))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 b) (*.f64 b r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 r b)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))) b) (cos.f64 b)))))) (/.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 r b))) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 b (*.f64 a r))) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 1/6 (/.f64 (*.f64 b (*.f64 (sin.f64 b) r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 b (*.f64 (sin.f64 b) r)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 b (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 b (*.f64 a r))) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 b (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 b (*.f64 (sin.f64 b) r)) (pow.f64 (cos.f64 b) 2)) -1/3)))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (*.f64 (sin.f64 b) (*.f64 b r))) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 b (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 b r)) (pow.f64 (cos.f64 b) 2)) -1/3)))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 b (*.f64 (sin.f64 b) (*.f64 a r))) (pow.f64 (cos.f64 b) 2)) (neg.f64 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 b (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (cos.f64 b)) (*.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 b r)) (pow.f64 (cos.f64 b) 2)) -1/3)))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 a b)
(*.f64 b a)
(+.f64 (*.f64 a b) (*.f64 -1/6 (*.f64 (pow.f64 a 3) b)))
(+.f64 (*.f64 b a) (*.f64 (pow.f64 a 3) (*.f64 -1/6 b)))
(+.f64 (*.f64 b a) (*.f64 (pow.f64 a 3) (*.f64 b -1/6)))
(*.f64 b (+.f64 (*.f64 (pow.f64 a 3) -1/6) a))
(*.f64 b (+.f64 a (*.f64 (pow.f64 a 3) -1/6)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 a 5) b)) (*.f64 -1/6 (*.f64 (pow.f64 a 3) b))))
(+.f64 (*.f64 b a) (+.f64 (*.f64 (pow.f64 a 3) (*.f64 -1/6 b)) (*.f64 1/120 (*.f64 b (pow.f64 a 5)))))
(+.f64 (*.f64 b a) (+.f64 (*.f64 (pow.f64 a 3) (*.f64 b -1/6)) (*.f64 1/120 (*.f64 b (pow.f64 a 5)))))
(+.f64 (*.f64 (pow.f64 a 3) (*.f64 b -1/6)) (*.f64 b (+.f64 (*.f64 1/120 (pow.f64 a 5)) a)))
(+.f64 (*.f64 b a) (*.f64 b (+.f64 (*.f64 (pow.f64 a 3) -1/6) (*.f64 1/120 (pow.f64 a 5)))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 a 5) b)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 a 3) b)) (*.f64 -1/5040 (*.f64 (pow.f64 a 7) b)))))
(+.f64 (*.f64 b a) (+.f64 (*.f64 1/120 (*.f64 b (pow.f64 a 5))) (+.f64 (*.f64 (pow.f64 a 3) (*.f64 -1/6 b)) (*.f64 -1/5040 (*.f64 b (pow.f64 a 7))))))
(+.f64 (*.f64 b a) (+.f64 (*.f64 (pow.f64 a 3) (*.f64 b -1/6)) (+.f64 (*.f64 b (*.f64 -1/5040 (pow.f64 a 7))) (*.f64 1/120 (*.f64 b (pow.f64 a 5))))))
(+.f64 (*.f64 b (+.f64 (*.f64 -1/5040 (pow.f64 a 7)) (*.f64 (pow.f64 a 3) -1/6))) (*.f64 b (+.f64 (*.f64 1/120 (pow.f64 a 5)) a)))
(+.f64 (*.f64 b (+.f64 (*.f64 (pow.f64 a 3) -1/6) (*.f64 -1/5040 (pow.f64 a 7)))) (*.f64 b (+.f64 a (*.f64 1/120 (pow.f64 a 5)))))
(+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 0)
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(+.f64 0 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(-.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 0)
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 1)
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(pow.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) 1)
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a)))))
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a)))))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a)))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a)))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r)))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a)))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) (+.f64 r r)) 2)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a)))))
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 b (sin.f64 a)))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 b (sin.f64 a)))))
(+.f64 (*.f64 b (sin.f64 a)) 0)
(*.f64 b (sin.f64 a))
(+.f64 0 (*.f64 b (sin.f64 a)))
(*.f64 b (sin.f64 a))
(-.f64 (*.f64 b (sin.f64 a)) 0)
(*.f64 b (sin.f64 a))
(/.f64 (*.f64 b (sin.f64 a)) 1)
(*.f64 b (sin.f64 a))
(/.f64 (*.f64 b (sin.f64 a)) (/.f64 (*.f64 b (sin.f64 a)) (*.f64 b (sin.f64 a))))
(*.f64 b (sin.f64 a))
(/.f64 (*.f64 (sin.f64 a) (+.f64 b b)) 2)
(*.f64 b (sin.f64 a))
(pow.f64 (*.f64 b (sin.f64 a)) 1)
(*.f64 b (sin.f64 a))

localize28.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 b (cos.f64 a))
0.3b
(pow.f64 (cos.f64 a) 2)
1.5b
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
3.6b
(*.f64 (sin.f64 a) (pow.f64 b 2))
Compiler

Compiled 73 to 35 computations (52.1% saved)

series9.0ms (0.1%)

Counts
3 → 44
Calls

18 calls:

TimeVariablePointExpression
1.0ms
r
@0
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
1.0ms
a
@inf
(*.f64 (sin.f64 a) (pow.f64 b 2))
1.0ms
a
@-inf
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
1.0ms
a
@inf
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
1.0ms
b
@inf
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))

rewrite63.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
966×rational_best-5
964×rational_best-4
964×rational_best-2
964×rational_best-3
964×rational_best-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01683
113783
247483
3202283
Stop Event
node limit
Counts
3 → 32
Calls
Call 1
Inputs
(*.f64 (sin.f64 a) (pow.f64 b 2))
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(pow.f64 (cos.f64 a) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 a) (pow.f64 b 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (*.f64 (sin.f64 a) (pow.f64 b 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 a) (*.f64 2 (pow.f64 b 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) (/.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) (+.f64 r r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (cos.f64 a) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (cos.f64 a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (cos.f64 a) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 a) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cos.f64 a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (pow.f64 (cos.f64 a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2))) (pow.f64 (cos.f64 a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2)) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2))) (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cos.f64 a) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cos.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 (cos.f64 a) 2)) 2)))))

simplify185.0ms (1.1%)

Algorithm
egg-herbie
Rules
1244×rational_best-simplify-47
842×rational_best-simplify-132
822×rational_best-simplify-1
712×rational_best-simplify-54
606×rational_best-simplify-80
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01273004
12462980
24742908
311572872
437662872
568512872
Stop Event
node limit
Counts
76 → 93
Calls
Call 1
Inputs
(*.f64 a (pow.f64 b 2))
(+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 -1/6 (*.f64 (pow.f64 a 3) (pow.f64 b 2))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 a 5) (pow.f64 b 2))) (+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 -1/6 (*.f64 (pow.f64 a 3) (pow.f64 b 2)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 a 5) (pow.f64 b 2))) (+.f64 (*.f64 a (pow.f64 b 2)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 a 3) (pow.f64 b 2))) (*.f64 -1/5040 (*.f64 (pow.f64 a 7) (pow.f64 b 2))))))
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(*.f64 r b)
(+.f64 (*.f64 a (*.f64 (pow.f64 b 2) r)) (*.f64 r b))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (+.f64 (*.f64 a (*.f64 (pow.f64 b 2) r)) (*.f64 r b)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 b 2)) (*.f64 -1 (pow.f64 b 2))) (*.f64 (pow.f64 a 3) r)) (+.f64 (*.f64 a (*.f64 (pow.f64 b 2) r)) (*.f64 r b))))
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
1
(+.f64 (*.f64 -1 (pow.f64 a 2)) 1)
(+.f64 (*.f64 1/3 (pow.f64 a 4)) (+.f64 (*.f64 -1 (pow.f64 a 2)) 1))
(+.f64 (*.f64 -2/45 (pow.f64 a 6)) (+.f64 (*.f64 1/3 (pow.f64 a 4)) (+.f64 (*.f64 -1 (pow.f64 a 2)) 1)))
(+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 0)
(+.f64 0 (*.f64 (sin.f64 a) (pow.f64 b 2)))
(-.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 0)
(/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 1)
(/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (*.f64 (sin.f64 a) (pow.f64 b 2))))
(/.f64 (*.f64 (sin.f64 a) (*.f64 2 (pow.f64 b 2))) 2)
(pow.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 1)
(+.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 0)
(+.f64 0 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(-.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 0)
(/.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 1)
(/.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) (/.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))))
(/.f64 (*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) (+.f64 r r)) 2)
(pow.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 1)
(+.f64 (pow.f64 (cos.f64 a) 2) 0)
(+.f64 0 (pow.f64 (cos.f64 a) 2))
(-.f64 (pow.f64 (cos.f64 a) 2) 0)
(*.f64 (pow.f64 (cos.f64 a) 2) 1)
(*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)))
(*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2))))
(*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2))))
(*.f64 1 (pow.f64 (cos.f64 a) 2))
(*.f64 (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (pow.f64 (cos.f64 a) 2))
(*.f64 (/.f64 1 (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2))
(*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2)))
(*.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2))) (pow.f64 (cos.f64 a) 2))
(*.f64 (/.f64 (/.f64 1 (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2)) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2)))
(*.f64 (/.f64 (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2))
(*.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2))) (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2))
(/.f64 (pow.f64 (cos.f64 a) 2) 1)
(/.f64 (pow.f64 (cos.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)))
(/.f64 (*.f64 2 (pow.f64 (cos.f64 a) 2)) 2)
Outputs
(*.f64 a (pow.f64 b 2))
(+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 -1/6 (*.f64 (pow.f64 a 3) (pow.f64 b 2))))
(+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 (pow.f64 a 3) (*.f64 (pow.f64 b 2) -1/6)))
(+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 (pow.f64 b 2) (*.f64 -1/6 (pow.f64 a 3))))
(*.f64 (pow.f64 b 2) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) a))
(*.f64 (pow.f64 b 2) (+.f64 a (*.f64 -1/6 (pow.f64 a 3))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 a 5) (pow.f64 b 2))) (+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 -1/6 (*.f64 (pow.f64 a 3) (pow.f64 b 2)))))
(+.f64 (+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 (pow.f64 a 3) (*.f64 (pow.f64 b 2) -1/6))) (*.f64 1/120 (*.f64 (pow.f64 b 2) (pow.f64 a 5))))
(+.f64 (+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 (pow.f64 b 2) (*.f64 -1/6 (pow.f64 a 3)))) (*.f64 (pow.f64 b 2) (*.f64 1/120 (pow.f64 a 5))))
(+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 (pow.f64 b 2) (+.f64 (*.f64 1/120 (pow.f64 a 5)) (*.f64 -1/6 (pow.f64 a 3)))))
(*.f64 (pow.f64 b 2) (+.f64 (+.f64 (*.f64 1/120 (pow.f64 a 5)) (*.f64 -1/6 (pow.f64 a 3))) a))
(*.f64 (pow.f64 b 2) (+.f64 (*.f64 1/120 (pow.f64 a 5)) (+.f64 a (*.f64 -1/6 (pow.f64 a 3)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 a 5) (pow.f64 b 2))) (+.f64 (*.f64 a (pow.f64 b 2)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 a 3) (pow.f64 b 2))) (*.f64 -1/5040 (*.f64 (pow.f64 a 7) (pow.f64 b 2))))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 b 2) (pow.f64 a 5))) (+.f64 (*.f64 a (pow.f64 b 2)) (+.f64 (*.f64 (pow.f64 a 3) (*.f64 (pow.f64 b 2) -1/6)) (*.f64 (pow.f64 a 7) (*.f64 -1/5040 (pow.f64 b 2))))))
(+.f64 (+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 (pow.f64 b 2) (*.f64 -1/6 (pow.f64 a 3)))) (+.f64 (*.f64 (pow.f64 b 2) (*.f64 -1/5040 (pow.f64 a 7))) (*.f64 (pow.f64 b 2) (*.f64 1/120 (pow.f64 a 5)))))
(+.f64 (*.f64 (pow.f64 b 2) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) a)) (*.f64 (pow.f64 b 2) (+.f64 (*.f64 1/120 (pow.f64 a 5)) (*.f64 -1/5040 (pow.f64 a 7)))))
(*.f64 (pow.f64 b 2) (+.f64 (+.f64 (*.f64 -1/5040 (pow.f64 a 7)) (*.f64 -1/6 (pow.f64 a 3))) (+.f64 a (*.f64 1/120 (pow.f64 a 5)))))
(*.f64 (pow.f64 b 2) (+.f64 (*.f64 -1/5040 (pow.f64 a 7)) (+.f64 (*.f64 1/120 (pow.f64 a 5)) (+.f64 a (*.f64 -1/6 (pow.f64 a 3))))))
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2))
(/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2))
(/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2))
(/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2))
(/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (pow.f64 b 2) (*.f64 (sin.f64 a) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 b r) (cos.f64 a)))
(*.f64 r b)
(*.f64 b r)
(+.f64 (*.f64 a (*.f64 (pow.f64 b 2) r)) (*.f64 r b))
(+.f64 (*.f64 b r) (*.f64 (pow.f64 b 2) (*.f64 a r)))
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
(*.f64 r (+.f64 b (*.f64 a (pow.f64 b 2))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (+.f64 (*.f64 a (*.f64 (pow.f64 b 2) r)) (*.f64 r b)))
(+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 2) (*.f64 a r))) (*.f64 1/2 (*.f64 r (*.f64 (pow.f64 a 2) b))))
(+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 2) (*.f64 a r))) (*.f64 r (*.f64 1/2 (*.f64 b (pow.f64 a 2)))))
(+.f64 (*.f64 b r) (*.f64 r (+.f64 (*.f64 b (*.f64 1/2 (pow.f64 a 2))) (*.f64 a (pow.f64 b 2)))))
(*.f64 r (+.f64 (+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 b (*.f64 1/2 (pow.f64 a 2)))) b))
(*.f64 r (+.f64 b (+.f64 (*.f64 a (pow.f64 b 2)) (*.f64 b (*.f64 1/2 (pow.f64 a 2))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (pow.f64 b 2)) (*.f64 -1 (pow.f64 b 2))) (*.f64 (pow.f64 a 3) r)) (+.f64 (*.f64 a (*.f64 (pow.f64 b 2) r)) (*.f64 r b))))
(+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 2) (*.f64 a r))) (+.f64 (*.f64 (-.f64 (*.f64 (pow.f64 b 2) -1/6) (*.f64 (pow.f64 b 2) -1)) (*.f64 (pow.f64 a 3) r)) (*.f64 1/2 (*.f64 r (*.f64 (pow.f64 a 2) b)))))
(+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 2) (*.f64 a r))) (+.f64 (*.f64 r (*.f64 1/2 (*.f64 b (pow.f64 a 2)))) (*.f64 r (*.f64 (*.f64 (pow.f64 b 2) 5/6) (pow.f64 a 3)))))
(+.f64 (*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b)) (*.f64 r (+.f64 (*.f64 (pow.f64 a 3) (*.f64 (pow.f64 b 2) 5/6)) (*.f64 b (*.f64 1/2 (pow.f64 a 2))))))
(+.f64 (*.f64 (pow.f64 b 2) (+.f64 (*.f64 (*.f64 (pow.f64 a 3) r) 5/6) (*.f64 a r))) (*.f64 b (+.f64 (*.f64 (pow.f64 a 2) (*.f64 r 1/2)) r)))
(*.f64 r (+.f64 b (+.f64 (*.f64 a (pow.f64 b 2)) (+.f64 (*.f64 b (*.f64 1/2 (pow.f64 a 2))) (*.f64 (pow.f64 a 3) (*.f64 (pow.f64 b 2) 5/6))))))
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) r)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
1
(+.f64 (*.f64 -1 (pow.f64 a 2)) 1)
(+.f64 1 (*.f64 (pow.f64 a 2) -1))
(+.f64 1 (neg.f64 (pow.f64 a 2)))
(+.f64 (*.f64 1/3 (pow.f64 a 4)) (+.f64 (*.f64 -1 (pow.f64 a 2)) 1))
(+.f64 1 (+.f64 (*.f64 (pow.f64 a 2) -1) (*.f64 1/3 (pow.f64 a 4))))
(+.f64 1 (+.f64 (neg.f64 (pow.f64 a 2)) (*.f64 1/3 (pow.f64 a 4))))
(+.f64 (neg.f64 (pow.f64 a 2)) (+.f64 1 (*.f64 1/3 (pow.f64 a 4))))
(+.f64 (+.f64 1 (neg.f64 (pow.f64 a 2))) (*.f64 1/3 (pow.f64 a 4)))
(+.f64 (*.f64 -2/45 (pow.f64 a 6)) (+.f64 (*.f64 1/3 (pow.f64 a 4)) (+.f64 (*.f64 -1 (pow.f64 a 2)) 1)))
(+.f64 (+.f64 1 (*.f64 (pow.f64 a 2) -1)) (+.f64 (*.f64 1/3 (pow.f64 a 4)) (*.f64 -2/45 (pow.f64 a 6))))
(+.f64 (*.f64 1/3 (pow.f64 a 4)) (+.f64 (+.f64 1 (neg.f64 (pow.f64 a 2))) (*.f64 -2/45 (pow.f64 a 6))))
(+.f64 (+.f64 1 (neg.f64 (pow.f64 a 2))) (+.f64 (*.f64 1/3 (pow.f64 a 4)) (*.f64 -2/45 (pow.f64 a 6))))
(+.f64 (neg.f64 (pow.f64 a 2)) (+.f64 1 (+.f64 (*.f64 1/3 (pow.f64 a 4)) (*.f64 -2/45 (pow.f64 a 6)))))
(+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 0)
(*.f64 (pow.f64 b 2) (sin.f64 a))
(+.f64 0 (*.f64 (sin.f64 a) (pow.f64 b 2)))
(*.f64 (pow.f64 b 2) (sin.f64 a))
(-.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 0)
(*.f64 (pow.f64 b 2) (sin.f64 a))
(/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 1)
(*.f64 (pow.f64 b 2) (sin.f64 a))
(/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (*.f64 (sin.f64 a) (pow.f64 b 2))))
(*.f64 (pow.f64 b 2) (sin.f64 a))
(/.f64 (*.f64 (sin.f64 a) (*.f64 2 (pow.f64 b 2))) 2)
(*.f64 (pow.f64 b 2) (sin.f64 a))
(pow.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) 1)
(*.f64 (pow.f64 b 2) (sin.f64 a))
(+.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 0)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(+.f64 0 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))))
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(-.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 0)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(/.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 1)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(/.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) (/.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))))
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(/.f64 (*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))) (+.f64 r r)) 2)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(pow.f64 (*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)))) 1)
(*.f64 (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 a)) (pow.f64 (cos.f64 a) 2))) r)
(+.f64 (pow.f64 (cos.f64 a) 2) 0)
(pow.f64 (cos.f64 a) 2)
(+.f64 0 (pow.f64 (cos.f64 a) 2))
(pow.f64 (cos.f64 a) 2)
(-.f64 (pow.f64 (cos.f64 a) 2) 0)
(pow.f64 (cos.f64 a) 2)
(*.f64 (pow.f64 (cos.f64 a) 2) 1)
(pow.f64 (cos.f64 a) 2)
(*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)))
(pow.f64 (cos.f64 a) 2)
(*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2))))
(pow.f64 (cos.f64 a) 2)
(*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2))))
(pow.f64 (cos.f64 a) 2)
(*.f64 1 (pow.f64 (cos.f64 a) 2))
(pow.f64 (cos.f64 a) 2)
(*.f64 (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (pow.f64 (cos.f64 a) 2))
(pow.f64 (cos.f64 a) 2)
(*.f64 (/.f64 1 (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2))
(pow.f64 (cos.f64 a) 2)
(*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2)))
(pow.f64 (cos.f64 a) 2)
(*.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2))) (pow.f64 (cos.f64 a) 2))
(pow.f64 (cos.f64 a) 2)
(*.f64 (/.f64 (/.f64 1 (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2)) (*.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2)))
(pow.f64 (cos.f64 a) 2)
(*.f64 (/.f64 (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2))
(pow.f64 (cos.f64 a) 2)
(*.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (/.f64 1 (pow.f64 (cos.f64 a) 2))) (pow.f64 (cos.f64 a) 2)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 a)) 2))
(pow.f64 (cos.f64 a) 2)
(/.f64 (pow.f64 (cos.f64 a) 2) 1)
(pow.f64 (cos.f64 a) 2)
(/.f64 (pow.f64 (cos.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (cos.f64 a) 2)))
(pow.f64 (cos.f64 a) 2)
(/.f64 (*.f64 2 (pow.f64 (cos.f64 a) 2)) 2)
(pow.f64 (cos.f64 a) 2)

eval692.0ms (4%)

Compiler

Compiled 17867 to 7862 computations (56% saved)

prune587.0ms (3.4%)

Pruning

39 alts after pruning (31 fresh and 8 done)

PrunedKeptTotal
New5278535
Fresh12324
Picked011
Done178
Total52939568
Error
0.1b
Counts
568 → 39
Alt Table
Click to see full alt table
StatusErrorProgram
0.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
26.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
26.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) (sin.f64 b))))
15.7b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
27.2b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
41.1b
(/.f64 (*.f64 r b) (cos.f64 b))
29.6b
(/.f64 (*.f64 r b) (cos.f64 a))
39.8b
(*.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
42.6b
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
38.1b
(*.f64 (sin.f64 b) r)
28.6b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2))) (*.f64 (sin.f64 a) b))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
23.2b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) a))))
22.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
26.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
26.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 b) (sin.f64 a)))))
28.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
28.7b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))))
41.0b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
15.8b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))
15.8b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
26.5b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 b) 2))))
26.1b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 a) 2))))
16.1b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 1 (cos.f64 (*.f64 (+.f64 b a) 2))) 2))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 (+.f64 b a))))))
27.3b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 b)))))
27.1b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
27.3b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 b)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
27.2b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
27.1b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
29.6b
(*.f64 r (/.f64 b (cos.f64 a)))
29.6b
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
53.2b
(*.f64 r (+.f64 (*.f64 (/.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
42.8b
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
41.6b
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
42.4b
(*.f64 r (*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))))))
61.8b
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))
41.1b
(*.f64 r b)
Compiler

Compiled 1412 to 794 computations (43.8% saved)

localize32.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
0.2b
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
0.2b
(-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
0.2b
(*.f64 (sin.f64 b) (sin.f64 a))
Compiler

Compiled 112 to 31 computations (72.3% saved)

series114.0ms (0.7%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
99.0ms
r
@0
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
2.0ms
a
@0
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
1.0ms
b
@0
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
1.0ms
b
@0
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
1.0ms
a
@0
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))

rewrite111.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1398×rational_best-2
1398×rational_best-3
1398×rational_best-1
1396×rational_best-5
1394×rational_best-4
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
019209
1176209
267059
3297059
Stop Event
node limit
Counts
3 → 45
Calls
Call 1
Inputs
(-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (neg.f64 (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))) (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))) (-.f64 0 (*.f64 2 (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cos.f64 (+.f64 b a))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 (+.f64 b a))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (cos.f64 (+.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (+.f64 b a))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)))))

simplify256.0ms (1.5%)

Algorithm
egg-herbie
Rules
890×rational_best-simplify-47
786×rational_best-simplify-1
590×rational_best-simplify-2
582×rational_best-simplify-132
564×rational_best-simplify-43
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
027510295
15529943
210959335
330419333
464489333
Stop Event
node limit
Counts
129 → 145
Calls
Call 1
Inputs
(-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (*.f64 -1 (*.f64 (sin.f64 a) b))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 (pow.f64 b 2) (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a)))))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 (pow.f64 b 2) (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a))))))) (cos.f64 a))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 2 (cos.f64 b))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) (pow.f64 a 2)))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) (pow.f64 a 2))))) (cos.f64 b))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))))) (pow.f64 b 3))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))) (pow.f64 b 4))) (+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))))) (pow.f64 b 3)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (pow.f64 a 3))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (/.f64 (*.f64 r b) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))))
(+.f64 (/.f64 (*.f64 r b) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 r (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))
(+.f64 (/.f64 (*.f64 r b) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 r (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))))) (pow.f64 b 3)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 r (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a))))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))) (pow.f64 b 4))) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (pow.f64 a 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(+.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (neg.f64 (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))
(+.f64 (cos.f64 (+.f64 b a)) 0)
(+.f64 0 (cos.f64 (+.f64 b a)))
(+.f64 (neg.f64 (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))) (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)))
(+.f64 (+.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))) (-.f64 0 (*.f64 2 (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
(*.f64 (cos.f64 (+.f64 b a)) 1)
(*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))))
(*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(*.f64 1 (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))
(*.f64 (neg.f64 (cos.f64 (+.f64 b a))) -1)
(*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a))))
(*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))
(*.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(/.f64 (cos.f64 (+.f64 b a)) 1)
(/.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(/.f64 (neg.f64 (cos.f64 (+.f64 b a))) -1)
(/.f64 (*.f64 2 (cos.f64 (+.f64 b a))) 2)
(pow.f64 (cos.f64 (+.f64 b a)) 1)
(neg.f64 (neg.f64 (cos.f64 (+.f64 b a))))
(cos.f64 (+.f64 b a))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(/.f64 (*.f64 2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2)
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
Outputs
(-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (*.f64 -1 (*.f64 (sin.f64 a) b))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 a) b))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (*.f64 (sin.f64 a) (neg.f64 b))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 (pow.f64 b 2) (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a)))))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 (pow.f64 b 2) (-.f64 (*.f64 (cos.f64 a) -1) (*.f64 (cos.f64 a) -1/2))))) (cos.f64 a))
(-.f64 (+.f64 (neg.f64 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 (pow.f64 b 2) (*.f64 (cos.f64 a) -1/2)) (*.f64 2 (cos.f64 a)))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (+.f64 (*.f64 (sin.f64 a) (neg.f64 b)) (*.f64 (pow.f64 b 2) (*.f64 (cos.f64 a) -1/2)))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 (sin.f64 a) (neg.f64 b)) (+.f64 (*.f64 2 (cos.f64 a)) (*.f64 (pow.f64 b 2) (*.f64 (cos.f64 a) -1/2)))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 (pow.f64 b 2) (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a))))))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 (pow.f64 b 2) (-.f64 (*.f64 (cos.f64 a) -1) (*.f64 (cos.f64 a) -1/2))) (*.f64 (sin.f64 a) (*.f64 1/6 (pow.f64 b 3)))))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 (sin.f64 a) (+.f64 (*.f64 -1 b) (*.f64 1/6 (pow.f64 b 3)))) (+.f64 (*.f64 (pow.f64 b 2) (*.f64 (cos.f64 a) -1/2)) (*.f64 2 (cos.f64 a)))) (cos.f64 a))
(-.f64 (+.f64 (*.f64 2 (cos.f64 a)) (+.f64 (*.f64 (pow.f64 b 2) (*.f64 (cos.f64 a) -1/2)) (*.f64 (sin.f64 a) (+.f64 (*.f64 1/6 (pow.f64 b 3)) (neg.f64 b))))) (cos.f64 a))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 2 (cos.f64 b))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 -1 (*.f64 a (sin.f64 b)))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 2 (cos.f64 b)) (neg.f64 (*.f64 a (sin.f64 b)))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 a))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 a (neg.f64 (sin.f64 b)))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) (pow.f64 a 2)))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a (sin.f64 b))) (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) (pow.f64 a 2)))) (cos.f64 b))
(-.f64 (+.f64 (+.f64 (*.f64 2 (cos.f64 b)) (neg.f64 (*.f64 a (sin.f64 b)))) (*.f64 (*.f64 -1/2 (cos.f64 b)) (pow.f64 a 2))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 2 (cos.f64 b)) (+.f64 (*.f64 (sin.f64 b) (neg.f64 a)) (*.f64 (*.f64 -1/2 (cos.f64 b)) (pow.f64 a 2)))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 2 (cos.f64 b)) (+.f64 (*.f64 a (neg.f64 (sin.f64 b))) (*.f64 (*.f64 -1/2 (cos.f64 b)) (pow.f64 a 2)))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) (pow.f64 a 2))))) (cos.f64 b))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a (sin.f64 b))) (+.f64 (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) (pow.f64 a 2)) (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))))) (cos.f64 b))
(-.f64 (+.f64 (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 (*.f64 -1/2 (cos.f64 b)) (pow.f64 a 2))) (*.f64 (sin.f64 b) (+.f64 (*.f64 a -1) (*.f64 1/6 (pow.f64 a 3))))) (cos.f64 b))
(-.f64 (+.f64 (+.f64 (*.f64 2 (cos.f64 b)) (*.f64 (*.f64 -1/2 (cos.f64 b)) (pow.f64 a 2))) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 1/6 (pow.f64 a 3))))) (cos.f64 b))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))))
(+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))))) (pow.f64 b 3))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))))))))
(+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (neg.f64 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)) (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))))))))
(+.f64 (+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (+.f64 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))) (pow.f64 b 4))) (+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))))) (pow.f64 b 3)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))))) (+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (cos.f64 a) -1) (*.f64 (cos.f64 a) -1/2))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))) (*.f64 -1 (pow.f64 b 4))))))
(+.f64 (neg.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (neg.f64 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) -1/2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))) (pow.f64 b 4))) (+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (neg.f64 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)) (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))))) (+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)) (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) -1/2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))) (neg.f64 (pow.f64 b 4))))))
(+.f64 (/.f64 b (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (+.f64 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) -1/2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))) (neg.f64 (pow.f64 b 4))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/2 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (+.f64 (*.f64 1/6 (/.f64 1 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (*.f64 -1 (+.f64 (/.f64 (cos.f64 a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))))))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))))
(+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)))))
(+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))
(+.f64 (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 -1/2 (cos.f64 b))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))
(+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 -1/2 (cos.f64 b))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 -1/2 (cos.f64 b))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (pow.f64 a 3))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))))))
(+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (+.f64 (+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 -1/2 (cos.f64 b))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))))) (neg.f64 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 -1/2 (cos.f64 b))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))) (/.f64 (*.f64 (*.f64 -1/2 (cos.f64 b)) (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))))))))
(+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 -1/2 (cos.f64 b))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))))) (*.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 -1/2 (cos.f64 b))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (*.f64 -1/2 (cos.f64 b)) (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (neg.f64 (pow.f64 a 3)))))
(+.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (+.f64 (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 -1/2 (cos.f64 b))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (*.f64 (pow.f64 a 3) (neg.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 -1/2 (cos.f64 b))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (*.f64 -1/2 (cos.f64 b)) (pow.f64 (sin.f64 b) 2)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (/.f64 (*.f64 r b) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))))
(+.f64 (/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))
(+.f64 (/.f64 (*.f64 r b) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 r (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))))) (pow.f64 b 3)) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))
(+.f64 (/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 a) -1) (*.f64 (cos.f64 a) -1/2)) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (+.f64 (/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))
(+.f64 (/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))))
(+.f64 (+.f64 (/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))))
(+.f64 (/.f64 (*.f64 r b) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 r (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))))) (pow.f64 b 3)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 r (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a)))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (-.f64 (*.f64 -1 (cos.f64 a)) (*.f64 -1/2 (cos.f64 a))))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))) (pow.f64 b 4))) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))))
(+.f64 (/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 a) -1) (*.f64 (cos.f64 a) -1/2)) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 a) -1) (*.f64 (cos.f64 a) -1/2)) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (-.f64 (*.f64 (cos.f64 a) -1) (*.f64 (cos.f64 a) -1/2)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))))))
(+.f64 (/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (neg.f64 (*.f64 (pow.f64 b 4) (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (*.f64 (cos.f64 a) -1/2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)))))
(+.f64 (/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (*.f64 (cos.f64 a) -1/2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))) (neg.f64 (pow.f64 b 4))))))
(+.f64 (/.f64 (*.f64 b r) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a))) (+.f64 (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (*.f64 (pow.f64 b 4) (neg.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (/.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2)) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3)))))) (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 2))) (/.f64 (*.f64 (sin.f64 a) (*.f64 (*.f64 (cos.f64 a) -1/2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)) 3))))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (neg.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 -1/2 (cos.f64 b)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (*.f64 (pow.f64 a 2) (neg.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 -1/2 (cos.f64 b)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 -1/2 (cos.f64 b)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))) (neg.f64 (pow.f64 a 2)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (pow.f64 a 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))))))
(+.f64 (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))) (*.f64 -1 (*.f64 (pow.f64 a 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1 (cos.f64 b)) (*.f64 -1/2 (cos.f64 b))) (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 -1/2 (cos.f64 b)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (*.f64 -1/2 (cos.f64 b)) (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))))) (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 -1/2 (cos.f64 b)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)) (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 -1/2 (cos.f64 b)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 -1/2 (cos.f64 b)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (*.f64 -1/2 (cos.f64 b)) (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))))))))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2))) (neg.f64 (+.f64 (*.f64 (pow.f64 a 2) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 -1/2 (cos.f64 b)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3))) (/.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 -1/2 (cos.f64 b)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))) (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (*.f64 -1/2 (cos.f64 b)) r)) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 3)) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (-.f64 (*.f64 2 (cos.f64 b)) (cos.f64 b)) 2)))))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(+.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (neg.f64 (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(+.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (neg.f64 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(+.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(+.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(+.f64 (cos.f64 (+.f64 b a)) 0)
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(+.f64 0 (cos.f64 (+.f64 b a)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(+.f64 (neg.f64 (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))) (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)))
(+.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (neg.f64 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(+.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(+.f64 (+.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))) (-.f64 0 (*.f64 2 (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
(+.f64 (+.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))) (neg.f64 (*.f64 2 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))
(+.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 a) (cos.f64 b))) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))) (neg.f64 (*.f64 2 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))
(+.f64 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 b) (+.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (neg.f64 (*.f64 2 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))
(+.f64 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 b) (+.f64 (cos.f64 a) (*.f64 2 (cos.f64 a))))) (neg.f64 (*.f64 2 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))
(*.f64 (cos.f64 (+.f64 b a)) 1)
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(*.f64 1 (cos.f64 (+.f64 b a)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(*.f64 (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (cos.f64 (+.f64 b a)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(*.f64 (neg.f64 (cos.f64 (+.f64 b a))) -1)
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (+.f64 b a))))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(*.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(/.f64 (cos.f64 (+.f64 b a)) 1)
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(/.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(/.f64 (neg.f64 (cos.f64 (+.f64 b a))) -1)
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(/.f64 (*.f64 2 (cos.f64 (+.f64 b a))) 2)
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(pow.f64 (cos.f64 (+.f64 b a)) 1)
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(neg.f64 (neg.f64 (cos.f64 (+.f64 b a))))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(cos.f64 (+.f64 b a))
(+.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 (+.f64 a b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 0)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 1)
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))

localize6.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sin.f64 b) r)
Compiler

Compiled 11 to 5 computations (54.5% saved)

localize28.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sin.f64 b) (cos.f64 a))
0.2b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
Compiler

Compiled 22 to 7 computations (68.2% saved)

series6.0ms (0%)

Counts
2 → 44
Calls

15 calls:

TimeVariablePointExpression
0.0ms
a
@0
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
0.0ms
a
@0
(/.f64 (sin.f64 b) (cos.f64 a))
0.0ms
r
@0
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
0.0ms
a
@-inf
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
0.0ms
a
@inf
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))

rewrite222.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1290×rational_best-simplify-57
712×rational_best-5
710×rational_best-4
710×rational_best-2
710×rational_best-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01036
18936
233836
3145536
4649736
Stop Event
node limit
Counts
2 → 29
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (sin.f64 b) (cos.f64 a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (+.f64 r r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (sin.f64 b) (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))) (/.f64 (sin.f64 b) (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 a))))))))

simplify339.0ms (2%)

Algorithm
egg-herbie
Rules
1358×rational_best-simplify-2
1168×rational_best-simplify-78
900×rational_best-simplify-44
898×rational_best-simplify-132
576×rational_best-simplify-43
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01502229
13162075
25772013
318032013
435342013
561862013
Stop Event
node limit
Counts
73 → 77
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a)))))
(+.f64 (*.f64 -1/5040 (/.f64 (*.f64 r (pow.f64 b 7)) (cos.f64 a))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(*.f64 (sin.f64 b) r)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (*.f64 (sin.f64 b) r))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r))))) (*.f64 (sin.f64 b) r)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 b) r)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r)))) (*.f64 1/48 (*.f64 (sin.f64 b) r)))) (pow.f64 a 6))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r))))) (*.f64 (sin.f64 b) r))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 b 5) (cos.f64 a))) (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a)))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 b 5) (cos.f64 a))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a))) (*.f64 -1/5040 (/.f64 (pow.f64 b 7) (cos.f64 a))))))
(sin.f64 b)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2))) (sin.f64 b))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2))) (+.f64 (sin.f64 b) (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 -1/4 (sin.f64 b)) (*.f64 1/24 (sin.f64 b)))))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2))) (+.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/48 (sin.f64 b)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (sin.f64 b)) (*.f64 1/24 (sin.f64 b)))) (*.f64 -1/720 (sin.f64 b)))))) (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 -1/4 (sin.f64 b)) (*.f64 1/24 (sin.f64 b))))))))
(+.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 0)
(+.f64 0 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))))
(-.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 0)
(-.f64 0 (neg.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))))
(/.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 1)
(/.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (+.f64 r r)) 2)
(pow.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 1)
(neg.f64 (neg.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 0)
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 a)))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 0)
(-.f64 0 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 1)
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))) (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 1)
(neg.f64 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 a))))
Outputs
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a)))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a)))))
(+.f64 (*.f64 -1/5040 (/.f64 (*.f64 r (pow.f64 b 7)) (cos.f64 a))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))))))
(+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a)))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (*.f64 -1/5040 (/.f64 (*.f64 r (pow.f64 b 7)) (cos.f64 a)))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a)))) (*.f64 -1/5040 (/.f64 (*.f64 r (pow.f64 b 7)) (cos.f64 a)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 r (pow.f64 b 7)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(*.f64 (sin.f64 b) r)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (*.f64 (sin.f64 b) r))
(+.f64 (*.f64 (sin.f64 b) r) (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) r))))
(*.f64 (sin.f64 b) (+.f64 (*.f64 1/2 (*.f64 r (pow.f64 a 2))) r))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 r (*.f64 1/2 (pow.f64 a 2)))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r))))) (*.f64 (sin.f64 b) r)))
(+.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 (sin.f64 b) (*.f64 1/24 r)) (*.f64 (sin.f64 b) (*.f64 -1/4 r))))) (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) r)))))
(+.f64 (neg.f64 (*.f64 (pow.f64 a 4) (*.f64 (*.f64 (sin.f64 b) r) -5/24))) (*.f64 (sin.f64 b) (+.f64 (*.f64 1/2 (*.f64 r (pow.f64 a 2))) r)))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 r (*.f64 1/2 (pow.f64 a 2))))) (*.f64 (pow.f64 a 4) (*.f64 (*.f64 (sin.f64 b) r) 5/24)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 b) r)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r)))) (*.f64 1/48 (*.f64 (sin.f64 b) r)))) (pow.f64 a 6))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r))))) (*.f64 (sin.f64 b) r))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) r))) (+.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 (sin.f64 b) (*.f64 1/24 r)) (*.f64 (sin.f64 b) (*.f64 -1/4 r))))) (*.f64 (+.f64 (*.f64 (sin.f64 b) (*.f64 -1/720 r)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 b) (*.f64 1/24 r)) (*.f64 (sin.f64 b) (*.f64 -1/4 r)))) (*.f64 (sin.f64 b) (*.f64 1/48 r)))) (*.f64 -1 (pow.f64 a 6))))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (+.f64 (*.f64 (sin.f64 b) (*.f64 r -1/720)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sin.f64 b) r) -5/24)) (*.f64 (sin.f64 b) (*.f64 r 1/48)))) (pow.f64 a 6)) (*.f64 (pow.f64 a 4) (*.f64 (*.f64 (sin.f64 b) r) -5/24)))) (*.f64 (sin.f64 b) (+.f64 (*.f64 1/2 (*.f64 r (pow.f64 a 2))) r)))
(+.f64 (+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 r (*.f64 1/2 (pow.f64 a 2))))) (*.f64 (pow.f64 a 4) (*.f64 (*.f64 (sin.f64 b) r) 5/24))) (*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 b) r) -5/48) (*.f64 r (*.f64 (sin.f64 b) 7/360))) (neg.f64 (pow.f64 a 6))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 r (*.f64 1/2 (pow.f64 a 2))))) (+.f64 (*.f64 (pow.f64 a 4) (*.f64 (*.f64 (sin.f64 b) r) 5/24)) (*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 b) r) -5/48) (*.f64 r (*.f64 (sin.f64 b) 7/360))) (neg.f64 (pow.f64 a 6)))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 b 5) (cos.f64 a))) (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a)))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a))) (*.f64 1/120 (/.f64 (pow.f64 b 5) (cos.f64 a)))))
(+.f64 (+.f64 (/.f64 b (cos.f64 a)) (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a)))) (*.f64 1/120 (/.f64 (pow.f64 b 5) (cos.f64 a))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 b 5) (cos.f64 a))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a))) (*.f64 -1/5040 (/.f64 (pow.f64 b 7) (cos.f64 a))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a))) (+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 b 7) (cos.f64 a))) (*.f64 1/120 (/.f64 (pow.f64 b 5) (cos.f64 a))))))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 b 5) (cos.f64 a))) (+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a))) (*.f64 -1/5040 (/.f64 (pow.f64 b 7) (cos.f64 a))))))
(+.f64 (/.f64 b (cos.f64 a)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 b 3) (cos.f64 a))) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 b 5) (cos.f64 a))) (*.f64 -1/5040 (/.f64 (pow.f64 b 7) (cos.f64 a))))))
(sin.f64 b)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2))) (sin.f64 b))
(+.f64 (sin.f64 b) (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2))))
(+.f64 (sin.f64 b) (*.f64 (sin.f64 b) (*.f64 1/2 (pow.f64 a 2))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2))) (+.f64 (sin.f64 b) (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 -1/4 (sin.f64 b)) (*.f64 1/24 (sin.f64 b)))))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 (sin.f64 b) -1/4) (*.f64 (sin.f64 b) 1/24)))) (+.f64 (sin.f64 b) (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2)))))
(+.f64 (sin.f64 b) (+.f64 (neg.f64 (*.f64 (pow.f64 a 4) (*.f64 (sin.f64 b) -5/24))) (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2)))))
(+.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (*.f64 1/2 (pow.f64 a 2))) (*.f64 (pow.f64 a 4) (*.f64 (sin.f64 b) 5/24))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2))) (+.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 6) (+.f64 (*.f64 1/48 (sin.f64 b)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (sin.f64 b)) (*.f64 1/24 (sin.f64 b)))) (*.f64 -1/720 (sin.f64 b)))))) (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 -1/4 (sin.f64 b)) (*.f64 1/24 (sin.f64 b))))))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 (sin.f64 b) -1/4) (*.f64 (sin.f64 b) 1/24))) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 (sin.f64 b) 1/48) (+.f64 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 b) -1/4) (*.f64 (sin.f64 b) 1/24))) (*.f64 (sin.f64 b) -1/720)))))) (+.f64 (sin.f64 b) (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2)))))
(+.f64 (sin.f64 b) (+.f64 (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 4) (*.f64 (sin.f64 b) -5/24)) (*.f64 (pow.f64 a 6) (+.f64 (*.f64 (sin.f64 b) 1/48) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) -5/24)) (*.f64 (sin.f64 b) -1/720)))))) (*.f64 1/2 (*.f64 (sin.f64 b) (pow.f64 a 2)))))
(+.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (*.f64 1/2 (pow.f64 a 2))) (+.f64 (*.f64 (pow.f64 a 4) (*.f64 (sin.f64 b) 5/24)) (*.f64 (+.f64 (*.f64 (sin.f64 b) -5/48) (*.f64 (sin.f64 b) 7/360)) (neg.f64 (pow.f64 a 6))))))
(+.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 0)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(+.f64 0 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(-.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 0)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(-.f64 0 (neg.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 1)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (+.f64 r r)) 2)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(pow.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) 1)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(neg.f64 (neg.f64 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 0)
(/.f64 (sin.f64 b) (cos.f64 a))
(+.f64 0 (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (sin.f64 b) (cos.f64 a))
(-.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 0)
(/.f64 (sin.f64 b) (cos.f64 a))
(-.f64 0 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 a))))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 1)
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a))))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))) (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (*.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 a)))) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))
(/.f64 (sin.f64 b) (cos.f64 a))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a)))) (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) (/.f64 (sin.f64 b) (cos.f64 a))))
(/.f64 (sin.f64 b) (cos.f64 a))
(pow.f64 (/.f64 (sin.f64 b) (cos.f64 a)) 1)
(/.f64 (sin.f64 b) (cos.f64 a))
(neg.f64 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 a))))
(/.f64 (sin.f64 b) (cos.f64 a))

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))
0.1b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
0.2b
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
0.2b
(*.f64 (sin.f64 b) (sin.f64 a))
Compiler

Compiled 49 to 10 computations (79.6% saved)

series21.0ms (0.1%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
14.0ms
b
@-inf
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
1.0ms
b
@inf
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
1.0ms
b
@-inf
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
1.0ms
r
@inf
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
1.0ms
b
@inf
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))

rewrite82.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
1102×rational_best-5
1100×rational_best-4
1100×rational_best-2
1100×rational_best-3
1100×rational_best-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013101
1122101
2500101
32237101
Stop Event
node limit
Counts
3 → 48
Calls
Call 1
Inputs
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (+.f64 r r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 0 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)))) (*.f64 (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)))))))

simplify460.0ms (2.7%)

Algorithm
egg-herbie
Rules
1200×rational_best-simplify-2
868×rational_best-simplify-1
676×rational_best-simplify-132
628×rational_best-simplify-44
494×rational_best-simplify-43
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
02235330
14785226
28705166
320615154
437985136
563775132
Stop Event
node limit
Counts
132 → 147
Calls
Call 1
Inputs
b
(+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) b)
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 1/3 (*.f64 -1 (pow.f64 (sin.f64 a) 2)))) (+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) b))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 1/3 (*.f64 -1 (pow.f64 (sin.f64 a) 2)))) (+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (+.f64 b (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (-.f64 1/3 (*.f64 -1 (pow.f64 (sin.f64 a) 2))))) (+.f64 (*.f64 -1/2 (sin.f64 a)) (*.f64 1/6 (sin.f64 a)))))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))) (pow.f64 a 3))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r b)
(+.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (*.f64 r b))
(+.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (+.f64 (*.f64 -1/2 r) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 a) 2) r)))) (pow.f64 b 3)) (*.f64 r b)))
(+.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 a) r)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) r)) (*.f64 -1 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 r) (+.f64 (*.f64 -1/2 r) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 a) 2) r)))))))))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (+.f64 (*.f64 -1/2 r) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 a) 2) r)))) (pow.f64 b 3)) (*.f64 r b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) r) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)))))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
1
(+.f64 1 (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 b 2)) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 b 2)) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (cos.f64 b))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 0)
(+.f64 0 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(-.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 0)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 1)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))
(*.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 1)
(+.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 0)
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 0)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 1)
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r)))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (+.f64 r r)) 2)
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 1)
(+.f64 (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))
(+.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 0)
(+.f64 0 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
(+.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 b))
(+.f64 (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 0 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2)))
(*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 1)
(*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(*.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) -1)
(*.f64 (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))))
(*.f64 (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)))) (*.f64 (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)))))
(*.f64 (/.f64 (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))))
(*.f64 (/.f64 (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))))
(/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 1)
(/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) -1)
(/.f64 (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 2) 2)
(/.f64 (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) 2) -2)
(pow.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 1)
(neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)))
Outputs
b
(+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) b)
(+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2)))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 1/3 (*.f64 -1 (pow.f64 (sin.f64 a) 2)))) (+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) b))
(+.f64 (+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2))) (*.f64 (pow.f64 b 3) (-.f64 1/3 (*.f64 -1 (pow.f64 (sin.f64 a) 2)))))
(+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (+.f64 b (*.f64 (pow.f64 b 3) (-.f64 1/3 (neg.f64 (pow.f64 (sin.f64 a) 2))))))
(+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (+.f64 b (*.f64 (pow.f64 b 3) (+.f64 (pow.f64 (sin.f64 a) 2) 1/3))))
(+.f64 b (+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (*.f64 (pow.f64 b 3) (+.f64 1/3 (pow.f64 (sin.f64 a) 2)))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 1/3 (*.f64 -1 (pow.f64 (sin.f64 a) 2)))) (+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (+.f64 b (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (-.f64 1/3 (*.f64 -1 (pow.f64 (sin.f64 a) 2))))) (+.f64 (*.f64 -1/2 (sin.f64 a)) (*.f64 1/6 (sin.f64 a)))))))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 1/3 (*.f64 -1 (pow.f64 (sin.f64 a) 2)))) (+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (+.f64 b (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (-.f64 1/3 (*.f64 -1 (pow.f64 (sin.f64 a) 2))))) (+.f64 (*.f64 (sin.f64 a) -1/2) (*.f64 (sin.f64 a) 1/6))))))))
(+.f64 (+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2))) (+.f64 (neg.f64 (*.f64 (pow.f64 b 4) (+.f64 (neg.f64 (*.f64 (sin.f64 a) (-.f64 1/3 (neg.f64 (pow.f64 (sin.f64 a) 2))))) (*.f64 (sin.f64 a) -1/3)))) (*.f64 (pow.f64 b 3) (-.f64 1/3 (neg.f64 (pow.f64 (sin.f64 a) 2))))))
(+.f64 b (+.f64 (*.f64 (pow.f64 b 4) (neg.f64 (*.f64 (sin.f64 a) (+.f64 -1/3 (neg.f64 (-.f64 1/3 (neg.f64 (pow.f64 (sin.f64 a) 2)))))))) (+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (*.f64 (pow.f64 b 3) (-.f64 1/3 (neg.f64 (pow.f64 (sin.f64 a) 2)))))))
(+.f64 b (+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (+.f64 (*.f64 (pow.f64 b 3) (+.f64 (pow.f64 (sin.f64 a) 2) 1/3)) (*.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 a) 2) 1/3)) -1/3)) (neg.f64 (pow.f64 b 4))))))
(+.f64 b (+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (+.f64 (*.f64 (pow.f64 b 3) (+.f64 1/3 (pow.f64 (sin.f64 a) 2))) (*.f64 (*.f64 (sin.f64 a) (+.f64 (+.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) -1/3) -1/3)) (neg.f64 (pow.f64 b 4))))))
(+.f64 b (+.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (+.f64 (*.f64 (pow.f64 b 3) (+.f64 1/3 (pow.f64 (sin.f64 a) 2))) (*.f64 (*.f64 (sin.f64 a) (+.f64 (-.f64 -1/3 (pow.f64 (sin.f64 a) 2)) -1/3)) (neg.f64 (pow.f64 b 4))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (cos.f64 b))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3))))
(+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))) (pow.f64 a 3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))) (pow.f64 a 3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (neg.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))) (pow.f64 a 3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3))) (*.f64 (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))) (neg.f64 (pow.f64 a 3)))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (*.f64 (+.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))) (neg.f64 (pow.f64 a 3))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r b)
(*.f64 b r)
(+.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (*.f64 r b))
(+.f64 (*.f64 b r) (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)))
(*.f64 r (+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2))))
(*.f64 (+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2))) r)
(+.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (+.f64 (*.f64 -1/2 r) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 a) 2) r)))) (pow.f64 b 3)) (*.f64 r b)))
(+.f64 (*.f64 b r) (+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (+.f64 (*.f64 -1/2 r) (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 r))))) (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r))))
(+.f64 (*.f64 b r) (+.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (+.f64 (*.f64 -1/2 r) (*.f64 r (neg.f64 (pow.f64 (sin.f64 a) 2))))))))
(+.f64 (*.f64 r (+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2)))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (*.f64 r (+.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) -1/2)))))
(+.f64 (*.f64 (+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2))) r) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (*.f64 r (+.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) -1/2)))))
(+.f64 (*.f64 (+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2))) r) (*.f64 (pow.f64 b 3) (*.f64 r (-.f64 -1/6 (+.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) -1/2)))))
(+.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 a) r)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) r)) (*.f64 -1 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 r) (+.f64 (*.f64 -1/2 r) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 a) 2) r)))))))))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (+.f64 (*.f64 -1/2 r) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 a) 2) r)))) (pow.f64 b 3)) (*.f64 r b))))
(+.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (+.f64 (*.f64 -1/2 r) (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 r)))))) (*.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (*.f64 (sin.f64 a) (*.f64 -1/2 r)) (+.f64 (*.f64 (sin.f64 a) (*.f64 1/6 r)) (*.f64 -1 (*.f64 (sin.f64 a) (-.f64 (*.f64 r -1/6) (+.f64 (*.f64 -1/2 r) (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 r))))))))))))
(+.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (+.f64 (+.f64 (*.f64 b r) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (+.f64 (*.f64 -1/2 r) (*.f64 r (neg.f64 (pow.f64 (sin.f64 a) 2))))))) (neg.f64 (*.f64 (pow.f64 b 4) (+.f64 (neg.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 r -1/6) (+.f64 (*.f64 -1/2 r) (*.f64 r (neg.f64 (pow.f64 (sin.f64 a) 2))))))) (*.f64 (*.f64 (sin.f64 a) r) -1/3))))))
(+.f64 (+.f64 (*.f64 r (+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2)))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (*.f64 r (+.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) -1/2))))) (*.f64 (pow.f64 b 4) (neg.f64 (*.f64 (sin.f64 a) (+.f64 (*.f64 r -1/3) (neg.f64 (-.f64 (*.f64 r -1/6) (*.f64 r (+.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) -1/2)))))))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 r -1/6) (*.f64 r (+.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) -1/2)))) (+.f64 (*.f64 (pow.f64 b 4) (neg.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 (-.f64 (*.f64 r -1/6) (*.f64 r (+.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) -1/2)))) (*.f64 r -1/3))))) (*.f64 (+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2))) r)))
(+.f64 (*.f64 (pow.f64 b 3) (*.f64 r (-.f64 -1/6 (+.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) -1/2)))) (+.f64 (*.f64 (+.f64 b (*.f64 (sin.f64 a) (pow.f64 b 2))) r) (*.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 (*.f64 r (-.f64 -1/6 (+.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) -1/2)))) (*.f64 r -1/3))) (neg.f64 (pow.f64 b 4)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 (sin.f64 b) 3) r)) (pow.f64 (cos.f64 b) 3))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) r) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)))))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) r) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))))))))
(+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3))) (neg.f64 (*.f64 (pow.f64 a 3) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) r) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3))) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) r) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)))) (neg.f64 (pow.f64 a 3)))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 (pow.f64 a 3) (neg.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) r) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)))))) (+.f64 (/.f64 (*.f64 a (*.f64 (pow.f64 (sin.f64 b) 2) r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 (sin.f64 b) 3) r)) (pow.f64 (cos.f64 b) 3)))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 (pow.f64 a 3) (neg.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) r) (pow.f64 (cos.f64 b) 4))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) r) (pow.f64 (cos.f64 b) 2)))))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
1
(+.f64 1 (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 1 (*.f64 (sin.f64 a) (*.f64 -1 b)))
(+.f64 1 (neg.f64 (*.f64 b (sin.f64 a))))
(+.f64 1 (*.f64 (sin.f64 a) (neg.f64 b)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 b 2)) (*.f64 -1 (*.f64 (sin.f64 a) b))))
(+.f64 1 (+.f64 (*.f64 (sin.f64 a) (*.f64 -1 b)) (*.f64 (pow.f64 b 2) -1/2)))
(+.f64 1 (+.f64 (neg.f64 (*.f64 b (sin.f64 a))) (*.f64 (pow.f64 b 2) -1/2)))
(+.f64 1 (+.f64 (*.f64 (sin.f64 a) (neg.f64 b)) (*.f64 (pow.f64 b 2) -1/2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 b 2)) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))))
(+.f64 1 (+.f64 (*.f64 (pow.f64 b 2) -1/2) (+.f64 (*.f64 (sin.f64 a) (*.f64 -1 b)) (*.f64 (sin.f64 a) (*.f64 1/6 (pow.f64 b 3))))))
(+.f64 1 (+.f64 (*.f64 (pow.f64 b 2) -1/2) (*.f64 (sin.f64 a) (+.f64 (*.f64 (pow.f64 b 3) 1/6) (*.f64 b -1)))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (*.f64 (pow.f64 b 3) 1/6) (neg.f64 b))) (+.f64 1 (*.f64 (pow.f64 b 2) -1/2)))
(+.f64 1 (+.f64 (*.f64 (pow.f64 b 2) -1/2) (*.f64 (sin.f64 a) (+.f64 (*.f64 (pow.f64 b 3) 1/6) (neg.f64 b)))))
(+.f64 (*.f64 (pow.f64 b 2) -1/2) (+.f64 1 (*.f64 (sin.f64 a) (+.f64 (*.f64 (pow.f64 b 3) 1/6) (neg.f64 b)))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(+.f64 (cos.f64 b) (*.f64 -1 (*.f64 a (sin.f64 b))))
(+.f64 (cos.f64 b) (neg.f64 (*.f64 a (sin.f64 b))))
(+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))
(+.f64 (cos.f64 b) (*.f64 a (neg.f64 (sin.f64 b))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 a (sin.f64 b))) (+.f64 (cos.f64 b) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))))
(+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (+.f64 (*.f64 a -1) (*.f64 1/6 (pow.f64 a 3)))))
(+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (+.f64 (*.f64 1/6 (pow.f64 a 3)) (neg.f64 a))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (cos.f64 b))))
(+.f64 (*.f64 -1 (*.f64 a (sin.f64 b))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (*.f64 -1/120 (pow.f64 a 5))))))
(+.f64 (neg.f64 (*.f64 a (sin.f64 b))) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (+.f64 (*.f64 1/6 (pow.f64 a 3)) (*.f64 -1/120 (pow.f64 a 5))))))
(+.f64 (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (*.f64 -1/120 (pow.f64 a 5)))) (*.f64 (sin.f64 b) (+.f64 (*.f64 1/6 (pow.f64 a 3)) (neg.f64 a))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (sin.f64 b) (*.f64 -1/120 (pow.f64 a 5))) (*.f64 (sin.f64 b) (+.f64 (*.f64 1/6 (pow.f64 a 3)) (neg.f64 a)))))
(+.f64 (+.f64 (cos.f64 b) (*.f64 a (neg.f64 (sin.f64 b)))) (*.f64 (sin.f64 b) (+.f64 (*.f64 1/6 (pow.f64 a 3)) (*.f64 -1/120 (pow.f64 a 5)))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 0)
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(+.f64 0 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(-.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 0)
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 1)
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))) (*.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (/.f64 (/.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) 1)
(/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))))
(+.f64 0 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))))
(-.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 0)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) (/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r)))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))))
(/.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (+.f64 r r)) 2)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))))
(pow.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) r) 1)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))))
(+.f64 (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 0)
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 0 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 b))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 0 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2)))
(+.f64 (+.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))) (neg.f64 (*.f64 2 (*.f64 (sin.f64 a) (sin.f64 b)))))
(+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (+.f64 (cos.f64 b) (neg.f64 (*.f64 (sin.f64 a) (*.f64 2 (sin.f64 b))))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (*.f64 2 (sin.f64 b))))))
(*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 1)
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) -1)
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (/.f64 (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)))) (*.f64 (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (/.f64 (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (/.f64 (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 1 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 1)
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (/.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(/.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) -1)
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(/.f64 (*.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 2) 2)
(/.f64 (*.f64 2 (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))) 2)
(/.f64 (*.f64 2 (-.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (cos.f64 b))) -2)
(/.f64 (*.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)) 2) -2)
(/.f64 (*.f64 2 (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))) 2)
(/.f64 (*.f64 2 (-.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (cos.f64 b))) -2)
(pow.f64 (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 1)
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 b)))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))

localize39.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
0.2b
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a))
0.3b
(*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))
2.5b
(cos.f64 (+.f64 b a))
Compiler

Compiled 81 to 23 computations (71.6% saved)

series3.0ms (0%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
0.0ms
b
@0
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a))
0.0ms
b
@inf
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a))
0.0ms
b
@-inf
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a))
0.0ms
a
@inf
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a))
0.0ms
a
@-inf
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a))

rewrite100.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1294×rational_best-5
1292×rational_best-4
1292×rational_best-2
1292×rational_best-3
1292×rational_best-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
016123
1150111
2598111
32623111
Stop Event
node limit
Counts
3 → 23
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))
(*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 a (+.f64 b a))) (cos.f64 b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 a) (*.f64 (cos.f64 (+.f64 b a)) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 a (+.f64 b a))) (cos.f64 (neg.f64 b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) (/.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (*.f64 (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))))) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 1)))))

simplify373.0ms (2.2%)

Algorithm
egg-herbie
Rules
1104×rational_best-simplify-132
1028×rational_best-simplify-47
894×rational_best-simplify-80
798×rational_best-simplify-78
684×rational_best-simplify-54
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01673029
13602889
27062845
313662803
435992783
573962783
Stop Event
node limit
Counts
107 → 97
Calls
Call 1
Inputs
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
1
(+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 1/24 (pow.f64 a 4))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (+.f64 (*.f64 -1/720 (pow.f64 a 6)) (*.f64 1/24 (pow.f64 a 4)))))
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(pow.f64 (cos.f64 a) 2)
(+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 -1 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 2))) (*.f64 -1 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) (pow.f64 b 3)))) (+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 2))) (*.f64 -1 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) (cos.f64 a))
(*.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) (cos.f64 a))
(*.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) (cos.f64 a))
(*.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) (cos.f64 a))
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (cos.f64 b))) (+.f64 (cos.f64 b) (*.f64 (+.f64 (*.f64 1/2 (sin.f64 b)) (*.f64 1/6 (sin.f64 b))) (pow.f64 a 3)))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) (cos.f64 a))
(*.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) (cos.f64 a))
(*.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) (cos.f64 a))
(*.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a)))))
(+.f64 (*.f64 -1/5040 (/.f64 (*.f64 r (pow.f64 b 7)) (cos.f64 a))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(*.f64 (sin.f64 b) r)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (*.f64 (sin.f64 b) r))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r))))) (*.f64 (sin.f64 b) r)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 b) r)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r)))) (*.f64 1/48 (*.f64 (sin.f64 b) r)))) (pow.f64 a 6))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r))))) (*.f64 (sin.f64 b) r))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(+.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 0)
(+.f64 0 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))
(-.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 0)
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 1)
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))))))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))) 2)) 2)
(pow.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 1)
(+.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 0)
(+.f64 0 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))
(-.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 0)
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 1)
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a))))
(/.f64 (+.f64 (cos.f64 (+.f64 a (+.f64 b a))) (cos.f64 b)) 2)
(/.f64 (*.f64 (cos.f64 a) (*.f64 (cos.f64 (+.f64 b a)) 2)) 2)
(/.f64 (+.f64 (cos.f64 (+.f64 a (+.f64 b a))) (cos.f64 (neg.f64 b))) 2)
(pow.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 1)
(+.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 0)
(+.f64 0 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))))
(-.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 0)
(/.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 1)
(/.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) (/.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))))))))
(/.f64 (*.f64 r (*.f64 (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))))) 2)) 2)
(pow.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 1)
Outputs
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
1
(+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 1/24 (pow.f64 a 4))))
(+.f64 (*.f64 -1/2 (pow.f64 a 2)) (+.f64 1 (*.f64 1/24 (pow.f64 a 4))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (+.f64 (*.f64 -1/720 (pow.f64 a 6)) (*.f64 1/24 (pow.f64 a 4)))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (+.f64 (*.f64 1/24 (pow.f64 a 4)) (*.f64 -1/720 (pow.f64 a 6)))))
(+.f64 (*.f64 -1/2 (pow.f64 a 2)) (+.f64 (*.f64 1/24 (pow.f64 a 4)) (+.f64 (*.f64 -1/720 (pow.f64 a 6)) 1)))
(+.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (+.f64 (*.f64 1/24 (pow.f64 a 4)) (*.f64 -1/720 (pow.f64 a 6))))
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(cos.f64 a)
(pow.f64 (cos.f64 a) 2)
(+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 -1 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))))
(+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) (neg.f64 b))))
(+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b))))
(+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) (neg.f64 (*.f64 (cos.f64 a) b))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 2))) (*.f64 -1 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b)))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))) (*.f64 -1/2 (pow.f64 (*.f64 (cos.f64 a) b) 2))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) (neg.f64 b))) (*.f64 -1/2 (pow.f64 (*.f64 (cos.f64 a) b) 2))))
(+.f64 (+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))) (*.f64 -1/2 (pow.f64 (*.f64 (cos.f64 a) b) 2)))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 (sin.f64 a) (neg.f64 (*.f64 (cos.f64 a) b))) (*.f64 -1/2 (pow.f64 (*.f64 (cos.f64 a) b) 2))))
(+.f64 (*.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b))) (+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 -1/2 (pow.f64 (*.f64 (cos.f64 a) b) 2))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) (pow.f64 b 3)))) (+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 2))) (*.f64 -1 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))))))
(+.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) b))) (*.f64 -1/2 (pow.f64 (*.f64 (cos.f64 a) b) 2))) (+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) (*.f64 1/6 (*.f64 (cos.f64 a) (pow.f64 b 3))))))
(+.f64 (pow.f64 (cos.f64 a) 2) (+.f64 (+.f64 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) (neg.f64 b))) (*.f64 -1/2 (pow.f64 (*.f64 (cos.f64 a) b) 2))) (*.f64 1/6 (*.f64 (sin.f64 a) (*.f64 (cos.f64 a) (pow.f64 b 3))))))
(+.f64 (+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 -1/2 (pow.f64 (*.f64 (cos.f64 a) b) 2))) (*.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) (*.f64 1/6 (pow.f64 b 3))) (*.f64 (sin.f64 a) (neg.f64 b)))))
(+.f64 (+.f64 (pow.f64 (cos.f64 a) 2) (*.f64 -1/2 (pow.f64 (*.f64 (cos.f64 a) b) 2))) (*.f64 (cos.f64 a) (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3))))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (*.f64 a -1)))
(+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))
(+.f64 (cos.f64 b) (*.f64 a (neg.f64 (sin.f64 b))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b)))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (pow.f64 a 2) (*.f64 -1 (cos.f64 b))) (*.f64 (sin.f64 b) (*.f64 a -1))))
(+.f64 (cos.f64 b) (*.f64 -1 (+.f64 (*.f64 a (sin.f64 b)) (*.f64 (pow.f64 a 2) (cos.f64 b)))))
(+.f64 (cos.f64 b) (neg.f64 (+.f64 (*.f64 a (sin.f64 b)) (*.f64 (pow.f64 a 2) (cos.f64 b)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 2) (cos.f64 b))) (+.f64 (cos.f64 b) (*.f64 (+.f64 (*.f64 1/2 (sin.f64 b)) (*.f64 1/6 (sin.f64 b))) (pow.f64 a 3)))))
(+.f64 (*.f64 (sin.f64 b) (*.f64 a -1)) (+.f64 (*.f64 (+.f64 (*.f64 (sin.f64 b) 1/2) (*.f64 1/6 (sin.f64 b))) (pow.f64 a 3)) (+.f64 (cos.f64 b) (*.f64 (pow.f64 a 2) (*.f64 -1 (cos.f64 b))))))
(+.f64 (+.f64 (cos.f64 b) (*.f64 (*.f64 (sin.f64 b) 2/3) (pow.f64 a 3))) (*.f64 -1 (+.f64 (*.f64 a (sin.f64 b)) (*.f64 (pow.f64 a 2) (cos.f64 b)))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 2/3)) (*.f64 -1 (+.f64 (*.f64 a (sin.f64 b)) (*.f64 (pow.f64 a 2) (cos.f64 b))))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (pow.f64 a 2) (neg.f64 (cos.f64 b))) (*.f64 (sin.f64 b) (+.f64 (*.f64 (pow.f64 a 3) 2/3) (neg.f64 a)))))
(+.f64 (cos.f64 b) (+.f64 (*.f64 (pow.f64 a 2) (neg.f64 (cos.f64 b))) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 2/3)))))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (+.f64 a b)) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(*.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) (cos.f64 a))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a)))))
(+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a)))) (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))) (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a)))))
(+.f64 (*.f64 -1/5040 (/.f64 (*.f64 r (pow.f64 b 7)) (cos.f64 a))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))))))
(+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a)))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (*.f64 -1/5040 (/.f64 (*.f64 r (pow.f64 b 7)) (cos.f64 a)))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (*.f64 -1/5040 (/.f64 (*.f64 r (pow.f64 b 7)) (cos.f64 a))))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 r (pow.f64 b 5)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 -1/5040 (/.f64 (*.f64 r (pow.f64 b 7)) (cos.f64 a))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(*.f64 (sin.f64 b) r)
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (*.f64 (sin.f64 b) r))
(+.f64 (*.f64 (sin.f64 b) r) (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) r))))
(*.f64 (sin.f64 b) (+.f64 (*.f64 (pow.f64 a 2) (*.f64 1/2 r)) r))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 (pow.f64 a 2) (*.f64 1/2 r))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r))))) (*.f64 (sin.f64 b) r)))
(+.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (pow.f64 a 4) (*.f64 -1 (+.f64 (*.f64 (sin.f64 b) (*.f64 1/24 r)) (*.f64 (sin.f64 b) (*.f64 -1/4 r))))) (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) r)))))
(+.f64 (neg.f64 (*.f64 (pow.f64 a 4) (*.f64 (*.f64 (sin.f64 b) r) -5/24))) (*.f64 (sin.f64 b) (+.f64 (*.f64 (pow.f64 a 2) (*.f64 1/2 r)) r)))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 (pow.f64 a 2) (*.f64 1/2 r)))) (*.f64 (pow.f64 a 4) (*.f64 (*.f64 (sin.f64 b) r) 5/24)))
(*.f64 (sin.f64 b) (+.f64 (*.f64 (pow.f64 a 4) (*.f64 r 5/24)) (+.f64 r (*.f64 (pow.f64 a 2) (*.f64 1/2 r)))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 b) r)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r)))) (*.f64 1/48 (*.f64 (sin.f64 b) r)))) (pow.f64 a 6))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 b) r)) (*.f64 -1/4 (*.f64 (sin.f64 b) r))))) (*.f64 (sin.f64 b) r))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 (sin.f64 b) r))) (+.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (pow.f64 a 4) (*.f64 -1 (+.f64 (*.f64 (sin.f64 b) (*.f64 1/24 r)) (*.f64 (sin.f64 b) (*.f64 -1/4 r))))) (*.f64 (+.f64 (*.f64 (sin.f64 b) (*.f64 1/48 r)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 b) (*.f64 1/24 r)) (*.f64 (sin.f64 b) (*.f64 -1/4 r)))) (*.f64 -1/720 (*.f64 (sin.f64 b) r)))) (*.f64 -1 (pow.f64 a 6))))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (pow.f64 a 6) (+.f64 (*.f64 (sin.f64 b) (*.f64 r 1/48)) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 b) r)) (*.f64 1/2 (*.f64 (*.f64 (sin.f64 b) r) -5/24))))) (*.f64 (pow.f64 a 4) (*.f64 (*.f64 (sin.f64 b) r) -5/24)))) (*.f64 (sin.f64 b) (+.f64 (*.f64 (pow.f64 a 2) (*.f64 1/2 r)) r)))
(+.f64 (+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 (pow.f64 a 2) (*.f64 1/2 r)))) (*.f64 (pow.f64 a 4) (*.f64 (*.f64 (sin.f64 b) r) 5/24))) (*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 b) r) -5/48) (*.f64 (*.f64 (sin.f64 b) r) 7/360)) (neg.f64 (pow.f64 a 6))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 r (*.f64 (pow.f64 a 2) (*.f64 1/2 r)))) (+.f64 (*.f64 (pow.f64 a 4) (*.f64 (*.f64 (sin.f64 b) r) 5/24)) (*.f64 (pow.f64 a 6) (neg.f64 (*.f64 (*.f64 (sin.f64 b) r) -61/720)))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 (pow.f64 a 4) (*.f64 r 5/24)) (+.f64 r (*.f64 (pow.f64 a 2) (*.f64 1/2 r))))) (*.f64 (pow.f64 a 6) (neg.f64 (*.f64 (sin.f64 b) (*.f64 r -61/720)))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(+.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 0)
(*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))
(+.f64 0 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))
(*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))
(-.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 0)
(*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 1)
(*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))))))
(*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))) 2)) 2)
(*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))
(pow.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))) 1)
(*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))
(+.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 0)
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(+.f64 0 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(-.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 0)
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 1)
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) (/.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a))))
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(/.f64 (+.f64 (cos.f64 (+.f64 a (+.f64 b a))) (cos.f64 b)) 2)
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(/.f64 (*.f64 (cos.f64 a) (*.f64 (cos.f64 (+.f64 b a)) 2)) 2)
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(/.f64 (+.f64 (cos.f64 (+.f64 a (+.f64 b a))) (cos.f64 (neg.f64 b))) 2)
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(pow.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)) 1)
(*.f64 (cos.f64 a) (cos.f64 (+.f64 a b)))
(+.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 0)
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))))
(+.f64 0 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))))
(-.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 0)
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))))
(/.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 1)
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))))
(/.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) (/.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))))))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))))
(/.f64 (*.f64 r (*.f64 (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a))))) 2)) 2)
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))))
(pow.f64 (*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 b a)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 b a)))))) 1)
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (cos.f64 (+.f64 a b)) (/.f64 (cos.f64 a) (cos.f64 (+.f64 a b))))))

eval798.0ms (4.6%)

Compiler

Compiled 22953 to 10417 computations (54.6% saved)

prune454.0ms (2.6%)

Pruning

46 alts after pruning (34 fresh and 12 done)

PrunedKeptTotal
New68813701
Fresh52126
Picked101
Done01212
Total69446740
Error
0.1b
Counts
740 → 46
Alt Table
Click to see full alt table
StatusErrorProgram
0.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
0.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
26.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
26.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) (sin.f64 b))))
15.7b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
27.2b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
27.1b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
41.1b
(/.f64 (*.f64 r b) (cos.f64 b))
29.6b
(/.f64 (*.f64 r b) (cos.f64 a))
39.8b
(*.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
42.6b
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
38.1b
(*.f64 (sin.f64 b) r)
28.6b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2))) (*.f64 (sin.f64 a) b))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
23.2b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) a))))
22.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
26.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
28.7b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
26.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 b) (sin.f64 a)))))
28.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
0.5b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (+.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))) (neg.f64 (*.f64 2 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))))
0.6b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 b) (+.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (neg.f64 (*.f64 2 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))))
40.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 (sin.f64 a) (neg.f64 b)))))
41.0b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
15.9b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
27.1b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
26.5b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 b) 2))))
26.1b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 a) 2))))
26.7b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 (cos.f64 (+.f64 a (+.f64 b a))) (cos.f64 b)) 2))))
16.1b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 1 (cos.f64 (*.f64 (+.f64 b a) 2))) 2))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 (+.f64 b a))))))
19.0b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 a)))))
38.4b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 b) (cos.f64 a)))))
36.8b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 b))))
38.5b
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 b)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
27.2b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
27.1b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
29.6b
(*.f64 r (/.f64 b (cos.f64 a)))
29.6b
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
53.2b
(*.f64 r (+.f64 (*.f64 (/.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
42.8b
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
41.6b
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
42.4b
(*.f64 r (*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))))))
61.8b
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))
41.1b
(*.f64 r b)
Compiler

Compiled 938 to 544 computations (42% saved)

regimes170.0ms (1%)

Counts
60 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (sin.f64 b) r)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 b))
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 (sin.f64 a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 1 (cos.f64 (*.f64 (+.f64 b a) 2))) 2))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) a))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 a) 2))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 b) 2))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 b)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 b)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 (cos.f64 (+.f64 a (+.f64 b a))) (cos.f64 b)) 2))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r (+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2))) (*.f64 (sin.f64 a) b))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (neg.f64 b)) (+.f64 (*.f64 (pow.f64 b 2) (*.f64 -1/2 (cos.f64 a))) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b))) (*.f64 (cos.f64 a) (*.f64 (pow.f64 b 2) -1/2)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
(*.f64 (/.f64 1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))) (*.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (*.f64 (cos.f64 a) 2)) (+.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 b) (+.f64 (*.f64 2 (cos.f64 a)) (cos.f64 a)))) (neg.f64 (*.f64 2 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (+.f64 (*.f64 (*.f64 2 (cos.f64 a)) (cos.f64 b)) (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))) (neg.f64 (*.f64 2 (+.f64 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))))))
(*.f64 r (+.f64 (*.f64 (/.f64 (/.f64 1 (/.f64 b (cos.f64 a))) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 b (cos.f64 a)) (/.f64 b (cos.f64 a)))))) (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2))))
(*.f64 r (*.f64 (/.f64 (/.f64 1 (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (sin.f64 b) (cos.f64 b)))))))
Outputs
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
Calls

5 calls:

44.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
28.0ms
b
27.0ms
a
26.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
26.0ms
r
Results
ErrorSegmentsBranch
0.3b1r
0.3b1a
0.3b1b
0.3b1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
0.3b1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
Compiler

Compiled 1104 to 346 computations (68.7% saved)

regimes248.0ms (1.4%)

Counts
42 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (sin.f64 b) r)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 b))
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 (sin.f64 a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 1 (cos.f64 (*.f64 (+.f64 b a) 2))) 2))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) a))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 a) 2))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 b) 2))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 b)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 b)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 (cos.f64 (+.f64 a (+.f64 b a))) (cos.f64 b)) 2))))
(*.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:

126.0ms
b
55.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
19.0ms
a
18.0ms
r
17.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Results
ErrorSegmentsBranch
0.3b1r
0.3b1a
0.3b1b
0.3b1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
0.3b1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
Compiler

Compiled 556 to 202 computations (63.7% saved)

regimes334.0ms (1.9%)

Counts
41 → 3
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (sin.f64 b) r)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 b))
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 (sin.f64 a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 1 (cos.f64 (*.f64 (+.f64 b a) 2))) 2))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) a))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 a) 2))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 b) 2))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 b)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 b)) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (*.f64 (cos.f64 (+.f64 b a)) (/.f64 1 (cos.f64 (+.f64 b a)))) (cos.f64 (+.f64 b a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 (cos.f64 (+.f64 a (+.f64 b a))) (cos.f64 b)) 2))))
Outputs
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
Calls

5 calls:

253.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
19.0ms
a
17.0ms
r
17.0ms
b
16.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Results
ErrorSegmentsBranch
15.7b1r
15.7b1a
15.7b1b
15.7b1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
14.3b3(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
Compiler

Compiled 540 to 199 computations (63.1% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.03584725248388177
0.059729556825324034
0.0ms
-0.0625815168957968
-0.05417311028192523
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes273.0ms (1.6%)

Counts
29 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (sin.f64 b) r)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 b))
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 (sin.f64 a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (neg.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (cos.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (/.f64 (+.f64 1 (cos.f64 (*.f64 (+.f64 b a) 2))) 2))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b))))
Outputs
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
Calls

5 calls:

182.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
14.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
14.0ms
b
14.0ms
a
13.0ms
r
Results
ErrorSegmentsBranch
15.7b1r
15.7b1a
15.7b1b
15.7b1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
15.7b1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
Compiler

Compiled 322 to 129 computations (59.9% saved)

regimes131.0ms (0.8%)

Counts
16 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (sin.f64 b) r)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 b))
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Calls

5 calls:

94.0ms
a
9.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
9.0ms
b
8.0ms
r
7.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Results
ErrorSegmentsBranch
15.8b1r
15.8b1a
15.8b1b
15.8b1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
15.8b1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
Compiler

Compiled 153 to 73 computations (52.3% saved)

regimes201.0ms (1.2%)

Counts
14 → 3
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (sin.f64 b) r)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 b))
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
Outputs
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
Calls

3 calls:

155.0ms
a
21.0ms
r
21.0ms
b
Results
ErrorSegmentsBranch
23.4b3r
15.7b3a
15.6b3b
Compiler

Compiled 113 to 50 computations (55.8% saved)

bsearch87.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
45.0ms
0.023435517203661802
504818.1431195076
41.0ms
-0.05412020899166243
-7.911795790718537e-6
Results
37.0ms70×body1024valid
32.0ms164×body256valid
10.0ms32×body512valid
4.0msbody2048valid
Compiler

Compiled 392 to 285 computations (27.3% saved)

regimes369.0ms (2.1%)

Counts
13 → 3
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (sin.f64 b) r)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 b))
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 a))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
Calls

3 calls:

138.0ms
a
132.0ms
r
97.0ms
b
Results
ErrorSegmentsBranch
23.4b3r
15.8b3a
15.7b3b
Compiler

Compiled 106 to 49 computations (53.8% saved)

bsearch170.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
125.0ms
0.023435517203661802
504818.1431195076
45.0ms
-0.05412020899166243
-7.911795790718537e-6
Results
42.0ms81×body1024valid
26.0ms148×body256valid
10.0ms32×body512valid
8.0ms11×body2048valid
Compiler

Compiled 392 to 285 computations (27.3% saved)

regimes130.0ms (0.8%)

Counts
11 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (sin.f64 b) r)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 b))
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
Calls

3 calls:

115.0ms
a
6.0ms
b
6.0ms
r
Results
ErrorSegmentsBranch
27.1b1r
27.1b1a
27.1b1b
Compiler

Compiled 92 to 46 computations (50% saved)

regimes42.0ms (0.2%)

Counts
10 → 3
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (sin.f64 b) r)
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 r b) (cos.f64 b))
(*.f64 r (+.f64 (*.f64 1/3 (pow.f64 b 3)) b))
(*.f64 r (+.f64 (*.f64 a (pow.f64 b 2)) b))
(*.f64 (sin.f64 b) (+.f64 r (*.f64 b (*.f64 a r))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 1 (*.f64 b (neg.f64 a)))))
Outputs
(*.f64 (sin.f64 b) r)
(*.f64 r (/.f64 b (cos.f64 a)))
(*.f64 (sin.f64 b) r)
Calls

3 calls:

17.0ms
b
16.0ms
a
6.0ms
r
Results
ErrorSegmentsBranch
29.6b1r
28.4b3a
26.5b3b
Compiler

Compiled 85 to 44 computations (48.2% saved)

bsearch122.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
79.0ms
0.023435517203661802
504818.1431195076
43.0ms
-587.4507996474108
-0.05412020899166243
Results
39.0ms152×body256valid
36.0ms16×body2048valid
35.0ms75×body1024valid
9.0ms29×body512valid
Compiler

Compiled 324 to 234 computations (27.8% saved)

regimes10.0ms (0.1%)

Accuracy

Total -3.2b remaining (-8.3%)

Threshold costs -3.2b (-8.3%)

Counts
2 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (sin.f64 b) r)
Outputs
(*.f64 (sin.f64 b) r)
Calls

3 calls:

4.0ms
r
3.0ms
b
3.0ms
a
Results
ErrorSegmentsBranch
38.1b1r
38.1b1a
38.1b1b
Compiler

Compiled 22 to 15 computations (31.8% saved)

simplify8.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067601
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(if (<=.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) -1080863910568919/18014398509481984) (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))) (if (<=.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) 3602879701896397/72057594037927936) (*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b)))) (*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(if (<=.f64 b -534955578137577/36893488147419103232) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (if (<=.f64 b 3458764513820541/144115188075855872) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(if (<=.f64 b -48999163945791/576460752303423488) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (if (<=.f64 b 3458764513820541/144115188075855872) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(if (<=.f64 b -1) (*.f64 (sin.f64 b) r) (if (<=.f64 b 5584463537939415/9007199254740992) (*.f64 r (/.f64 b (cos.f64 a))) (*.f64 (sin.f64 b) r)))
(*.f64 (sin.f64 b) r)
(*.f64 r b)
Outputs
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(if (<=.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) -1080863910568919/18014398509481984) (/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 b) (*.f64 (sin.f64 a) (sin.f64 b)))) (if (<=.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) 3602879701896397/72057594037927936) (*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 a) b)))) (*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a)))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(if (<=.f64 b -534955578137577/36893488147419103232) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (if (<=.f64 b 3458764513820541/144115188075855872) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(if (<=.f64 b -48999163945791/576460752303423488) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (if (<=.f64 b 3458764513820541/144115188075855872) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(if (<=.f64 b -1) (*.f64 (sin.f64 b) r) (if (<=.f64 b 5584463537939415/9007199254740992) (*.f64 r (/.f64 b (cos.f64 a))) (*.f64 (sin.f64 b) r)))
(*.f64 (sin.f64 b) r)
(*.f64 r b)
Compiler

Compiled 238 to 131 computations (45% saved)

soundness235.0ms (1.4%)

Algorithm
egg-herbie
Rules
1188×rational_best-simplify-1
868×trig-simplify-11
690×rational_best-simplify-51
650×rational_best-simplify-52
626×trig-simplify-9
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01127
12527
23527
35827
48427
511427
618627
738227
897427
9252927
10522527
Stop Event
node limit
Compiler

Compiled 21 to 12 computations (42.9% saved)

end158.0ms (0.9%)

Compiler

Compiled 208 to 63 computations (69.7% saved)

Profiling

Loading profile data...