Details

Time bar (total: 18.4s)

analyze590.0ms (3.2%)

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)

sample3.9s (21%)

Results
2.2s3564×body1024valid
766.0ms3063×body256valid
694.0ms1421×body512valid
224.0ms208×body2048valid
0.0msbody512infinite
Bogosity

preprocess19.0ms (0.1%)

Algorithm
egg-herbie
Rules
12×*-commutative_binary64
associate-/l*_binary64
associate-*r/_binary64
associate-*l/_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02356
13956
25556
36956
47356
033
Stop Event
saturated
saturated
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 (sin.f64 b) (/.f64 a (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 (sin.f64 r) (/.f64 (cos.f64 (+.f64 r a)) b))
(*.f64 r (/.f64 (sin.f64 a) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 r (sin.f64 a)) (cos.f64 (+.f64 b a)))
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify7.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
+-commutative_binary64
associate-*r/_binary64
associate-*l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11314
21714
32114
42214
Stop Event
saturated
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
14.2b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
14.2b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
Compiler

Compiled 12 to 8 computations (33.3% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 b)
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.7b
(cos.f64 (+.f64 b a))
Compiler

Compiled 31 to 8 computations (74.2% saved)

series20.0ms (0.1%)

Counts
4 → 88
Calls

24 calls:

TimeVariablePointExpression
2.0ms
a
@inf
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
2.0ms
r
@0
(*.f64 r (/.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)))
1.0ms
a
@0
(/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))

rewrite83.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
583×prod-diff_binary64
538×log-prod_binary64
345×pow-prod-down_binary64
288×pow2_binary64
214×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0934
120034
2287634
Stop Event
node limit
Counts
4 → 156
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))))
(sin.f64 b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (sqrt.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 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (+.f64 b a)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (+.f64 b a)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (/.f64 (*.f64 b b) (-.f64 b a))) (cos.f64 (/.f64 (*.f64 a a) (-.f64 b a)))) (*.f64 (sin.f64 (/.f64 (*.f64 b b) (-.f64 b a))) (sin.f64 (/.f64 (*.f64 a a) (-.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))) (log.f64 (sqrt.f64 (exp.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 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2) (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 2) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2)) (cos.f64 (-.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 b a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 b a)) 1 (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))))
((#(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 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (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 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) -2) (/.f64 (sin.f64 b) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) -1/2) (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (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 pow.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 1))))))
((#(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 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) 1) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (sqrt.f64 (cos.f64 (+.f64 b a)))) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(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 pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 b))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 b)))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 b))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 b))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (cbrt.f64 (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (sqrt.f64 (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 b) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 b)) 1))))))

simplify65.0ms (0.4%)

Algorithm
egg-herbie
Rules
521×times-frac_binary64
472×associate-/l*_binary64
437×associate-*l/_binary64
359×associate-*r/_binary64
303×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01931875
16261791
222111728
Stop Event
node limit
Counts
244 → 217
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))))
b
(+.f64 (*.f64 -1/6 (pow.f64 b 3)) b)
(+.f64 (*.f64 -1/6 (pow.f64 b 3)) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b))
(+.f64 (*.f64 -1/6 (pow.f64 b 3)) (+.f64 (*.f64 1/120 (pow.f64 b 5)) (+.f64 b (*.f64 -1/5040 (pow.f64 b 7)))))
Outputs
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (neg.f64 (*.f64 (sin.f64 a) b)))
(-.f64 (cos.f64 a) (*.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) (fma.f64 -1 (*.f64 (sin.f64 a) b) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)))))
(+.f64 (cos.f64 a) (-.f64 (*.f64 (cos.f64 a) (*.f64 (*.f64 b b) -1/2)) (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))
(+.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) (fma.f64 -1 (*.f64 (sin.f64 a) b) (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b))))))
(+.f64 (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)) (fma.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)) (*.f64 (pow.f64 b 3) (*.f64 (sin.f64 a) 1/6))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))
(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))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (cos.f64 b))
(-.f64 (cos.f64 b) (*.f64 a (sin.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)))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b)))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.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))))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b))) (*.f64 a (sin.f64 b)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.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 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (fma.f64 -1 (*.f64 (pow.f64 b 4) (fma.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (fma.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a)))))) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (-.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))))))
(+.f64 (/.f64 b (cos.f64 a)) (-.f64 (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))) (*.f64 (pow.f64 b 4) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3 (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (neg.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.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 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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 a (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.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)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 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) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)) (*.f64 (*.f64 a a) (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 (/.f64 -1/2 (cos.f64 b)) (sin.f64 b)) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))))
(+.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)))))
(fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (fma.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)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)) (*.f64 (*.f64 a a) (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.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 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (/.f64 (sin.f64 b) (cos.f64 b))))
(+.f64 (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 (/.f64 -1/2 (cos.f64 b)) (sin.f64 b)) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.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 -1/2 (cos.f64 b)) (sin.f64 b)) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)))) (/.f64 (sin.f64 b) (cos.f64 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 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) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 b (/.f64 (cos.f64 a) r))
(*.f64 (/.f64 b (cos.f64 a)) r)
(*.f64 (/.f64 r (cos.f64 a)) b)
(+.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 b (/.f64 (cos.f64 a) r)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r)))
(+.f64 (*.f64 (/.f64 r (cos.f64 a)) b) (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r))
(+.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 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 b (/.f64 (cos.f64 a) r)) (*.f64 (pow.f64 b 3) (-.f64 (/.f64 (*.f64 -1/6 r) (cos.f64 a)) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (/.f64 (pow.f64 (cos.f64 a) 3) r))) (*.f64 (/.f64 b (cos.f64 a)) r)))
(+.f64 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r) (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r)) (*.f64 (/.f64 r (cos.f64 a)) b)))
(+.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 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 b (/.f64 (cos.f64 a) r)) (fma.f64 (pow.f64 b 3) (-.f64 (/.f64 (*.f64 -1/6 r) (cos.f64 a)) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))) (neg.f64 (*.f64 (pow.f64 b 4) (fma.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (/.f64 (*.f64 -1/6 r) (cos.f64 a)) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))))) (cos.f64 a)) (*.f64 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2)) -1/3)))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r)) (-.f64 (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (/.f64 (pow.f64 (cos.f64 a) 3) r))) (*.f64 (/.f64 b (cos.f64 a)) r)) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) r) -1/3) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (/.f64 (pow.f64 (cos.f64 a) 3) r))))))))
(-.f64 (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r)) (*.f64 (/.f64 r (cos.f64 a)) b)) (-.f64 (*.f64 (pow.f64 b 4) (-.f64 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3) r) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r))))) (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.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) (cos.f64 (+.f64 a b))) r)
(/.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) (cos.f64 (+.f64 a b))) r)
(/.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) (cos.f64 (+.f64 a b))) r)
(/.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) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(+.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 (sin.f64 b) (/.f64 (cos.f64 b) r)) (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))))
(+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)))
(+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (*.f64 (/.f64 a (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)) r))
(+.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))
(+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (*.f64 (*.f64 a a) (fma.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) r) (pow.f64 (cos.f64 b) 3))))))
(+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (-.f64 (*.f64 (*.f64 (/.f64 a (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)) r) (*.f64 (*.f64 a a) (fma.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))))))
(+.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) r)) -1/3))) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))
(+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (-.f64 (-.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (*.f64 a a) (fma.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) r) (pow.f64 (cos.f64 b) 3))))) (*.f64 (pow.f64 a 3) (fma.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) r) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) r) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (*.f64 (*.f64 (/.f64 a (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)) r) (-.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (*.f64 a a) (+.f64 (*.f64 (fma.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) r) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))))) a) (fma.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r)))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)
(/.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) (cos.f64 (+.f64 a b))) r)
(/.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) (cos.f64 (+.f64 a b))) r)
(/.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) (cos.f64 (+.f64 a b))) r)
(/.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) (cos.f64 (+.f64 a b))) r)
b
(+.f64 (*.f64 -1/6 (pow.f64 b 3)) b)
(fma.f64 -1/6 (pow.f64 b 3) b)
(fma.f64 (pow.f64 b 3) -1/6 b)
(+.f64 (*.f64 -1/6 (pow.f64 b 3)) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b))
(fma.f64 -1/6 (pow.f64 b 3) (fma.f64 1/120 (pow.f64 b 5) b))
(fma.f64 (pow.f64 b 3) -1/6 (fma.f64 1/120 (pow.f64 b 5) b))
(+.f64 (*.f64 -1/6 (pow.f64 b 3)) (+.f64 (*.f64 1/120 (pow.f64 b 5)) (+.f64 b (*.f64 -1/5040 (pow.f64 b 7)))))
(fma.f64 -1/6 (pow.f64 b 3) (+.f64 (fma.f64 1/120 (pow.f64 b 5) b) (*.f64 -1/5040 (pow.f64 b 7))))
(fma.f64 (pow.f64 b 3) -1/6 (fma.f64 1/120 (pow.f64 b 5) (fma.f64 -1/5040 (pow.f64 b 7) b)))

eval82.0ms (0.4%)

Compiler

Compiled 4918 to 1721 computations (65% saved)

prune98.0ms (0.5%)

Pruning

50 alts after pruning (50 fresh and 0 done)

PrunedKeptTotal
New16750217
Fresh000
Picked101
Done000
Total16850218
Error
0.1b
Counts
218 → 50
Alt Table
Click to see full alt table
StatusErrorProgram
14.7b
(*.f64 r (log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
30.7b
(/.f64 (*.f64 b r) (cos.f64 a))
30.0b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))))
37.0b
(*.f64 r (/.f64 (log.f64 (exp.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2) (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))
29.5b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
35.2b
(*.f64 r (/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (cos.f64 (+.f64 b a))))
30.6b
(*.f64 r (/.f64 b (cos.f64 a)))
40.6b
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
28.1b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
14.8b
(*.f64 r (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (cos.f64 (+.f64 b a))))
36.9b
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
24.2b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
28.1b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))
27.9b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))
24.8b
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
30.8b
(*.f64 r (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 (/.f64 -1/2 (cos.f64 b)) (sin.f64 b)) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a)))))
14.2b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
1.0b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
14.2b
(*.f64 r (/.f64 (sin.f64 b) (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
24.8b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
26.7b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
14.6b
(/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))
14.3b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
14.4b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))
14.2b
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
26.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 a (sin.f64 b)))))
14.4b
(*.f64 r (/.f64 (sin.f64 b) (log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))
31.1b
(+.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))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
27.4b
(*.f64 r (/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))
24.8b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
15.0b
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))
35.9b
(*.f64 r (/.f64 (exp.f64 (log.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
14.9b
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
14.6b
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
31.0b
(*.f64 r (/.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) b) (cos.f64 (+.f64 b a))))
14.2b
(*.f64 r (/.f64 (log1p.f64 (expm1.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
48.6b
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
30.5b
(*.f64 r (/.f64 b (cos.f64 (+.f64 b a))))
30.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
14.2b
(*.f64 r (/.f64 (expm1.f64 (log1p.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
37.0b
(*.f64 r (/.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) (cos.f64 (+.f64 b a))))
1.1b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))
30.7b
(*.f64 (/.f64 r (cos.f64 a)) b)
0.4b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))
Compiler

Compiled 2400 to 1402 computations (41.6% saved)

localize21.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 64 to 12 computations (81.3% saved)

series29.0ms (0.2%)

Counts
4 → 108
Calls

27 calls:

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

rewrite110.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
653×log-prod_binary64
333×pow2_binary64
299×prod-diff_binary64
254×pow-unpow_binary64
236×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01377
126669
2349439
Stop Event
node limit
Counts
4 → 249
Calls
Call 1
Inputs
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))))
(*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))
Outputs
((#(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 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (neg.f64 (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (neg.f64 (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 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) -2) (/.f64 (sin.f64 b) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) -1/2) (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (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 pow.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) 1)))) (#(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 a b)) (cos.f64 (+.f64 a b))) 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 pow.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (sin.f64 a) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (sin.f64 b) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (sin.f64 a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (sin.f64 b) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1))))))
((#(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 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) 1) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (sqrt.f64 (cos.f64 (+.f64 b a)))) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(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 pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) (pow.f64 r 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 r 3) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) (pow.f64 r 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 r 3) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.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)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (sin.f64 b) (sin.f64 a) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 -1 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (sqrt.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 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 1) (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 a))) (sin.f64 b) (*.f64 (neg.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (cbrt.f64 (sin.f64 a)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (cbrt.f64 (sin.f64 a)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (cbrt.f64 (sin.f64 a)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (cbrt.f64 (sin.f64 a)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (cbrt.f64 (sin.f64 a)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (cbrt.f64 (sin.f64 a)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (cbrt.f64 (sin.f64 a)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (cbrt.f64 (sin.f64 a)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (cbrt.f64 (sin.f64 a)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (cbrt.f64 (sin.f64 a)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (sin.f64 b)) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b))) (sqrt.f64 (sin.f64 a)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b))) (sqrt.f64 (sin.f64 a)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b))) (sqrt.f64 (sin.f64 a)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b))) (sqrt.f64 (sin.f64 a)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b))) (sqrt.f64 (sin.f64 a)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b))) (sqrt.f64 (sin.f64 a)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b))) (sqrt.f64 (sin.f64 a)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b))) (sqrt.f64 (sin.f64 a)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b))) (sqrt.f64 (sin.f64 a)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b))) (sqrt.f64 (sin.f64 a)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (sin.f64 b)) (sqrt.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))) (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))) (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))) (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))) (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))) (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))) (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))) (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))) (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))) (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))) (*.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (sqrt.f64 (sin.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1)))) (fma.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1)))) (fma.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1)))) (fma.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1)))) (fma.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1)))) (fma.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1)))) (fma.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1)))) (fma.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (*.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 a))) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1)))) (fma.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1)))) (fma.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1)))) (fma.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))) (log.f64 (sqrt.f64 (exp.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 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 2) (-.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2) (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 2) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2)) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)) (exp.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (exp.f64 (*.f64 (cos.f64 b) (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (+.f64 b a))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (-.f64 b a))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 b a))) 1))))))

simplify84.0ms (0.5%)

Algorithm
egg-herbie
Rules
497×times-frac_binary64
452×associate-/l*_binary64
437×associate-*l/_binary64
359×associate-*r/_binary64
303×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01982979
16522833
223332734
Stop Event
node limit
Counts
357 → 317
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 (-.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 -1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7))) (*.f64 -1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))))))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 b) a))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1 (*.f64 (sin.f64 b) a)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 -1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7))))))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (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 (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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(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))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.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/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))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
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 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (*.f64 b b) (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (pow.f64 b 3) (/.f64 (*.f64 b b) (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a)))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (fma.f64 -1 (*.f64 (pow.f64 b 4) (fma.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (fma.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a)))))) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (pow.f64 b 3) (-.f64 (/.f64 (*.f64 b b) (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))))))
(+.f64 (/.f64 b (cos.f64 a)) (-.f64 (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))) (*.f64 (pow.f64 b 4) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3 (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (neg.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 a (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a))
(+.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)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (/.f64 a (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) (*.f64 a (*.f64 a (-.f64 (/.f64 (*.f64 -1/2 (sin.f64 b)) (cos.f64 b)) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (/.f64 -1/2 (/.f64 (cos.f64 b) (sin.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))))
(+.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)))))
(fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.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 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))))
(+.f64 (-.f64 (/.f64 a (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) (*.f64 a (*.f64 a (-.f64 (/.f64 (*.f64 -1/2 (sin.f64 b)) (cos.f64 b)) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.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 -1/2 (sin.f64 b)) (cos.f64 b)) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (/.f64 (sin.f64 b) (cos.f64 b))))
(+.f64 (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (/.f64 -1/2 (/.f64 (cos.f64 b) (sin.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.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 -1/2 (/.f64 (cos.f64 b) (sin.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)))) (/.f64 (sin.f64 b) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 -1 (*.f64 (sin.f64 a) b))
(neg.f64 (*.f64 b (sin.f64 a)))
(*.f64 b (neg.f64 (sin.f64 a)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (neg.f64 (*.f64 b (sin.f64 a))))
(-.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 3) 1/6)) (*.f64 b (sin.f64 a)))
(*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (*.f64 -1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)))))
(fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (fma.f64 -1 (*.f64 b (sin.f64 a)) (*.f64 -1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)))))
(fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (-.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 5) -1/120)) (*.f64 b (sin.f64 a))))
(fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 5) -1/120) b)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7))) (*.f64 -1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))))))
(fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (fma.f64 -1 (*.f64 b (sin.f64 a)) (fma.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)) (*.f64 -1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))))))
(fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (-.f64 (fma.f64 -1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)) (*.f64 (pow.f64 b 7) (*.f64 (sin.f64 a) 1/5040))) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b)) (*.f64 (sin.f64 a) (+.f64 (*.f64 -1/120 (pow.f64 b 5)) (*.f64 1/5040 (pow.f64 b 7)))))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 b) a))
(neg.f64 (*.f64 a (sin.f64 b)))
(*.f64 (sin.f64 b) (neg.f64 a))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1 (*.f64 (sin.f64 b) a)))
(fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (neg.f64 (*.f64 a (sin.f64 b))))
(fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (*.f64 (sin.f64 b) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 -1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)))))
(fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1 (*.f64 a (sin.f64 b)) (*.f64 -1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)))))
(fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (-.f64 (*.f64 (*.f64 -1/120 (pow.f64 a 5)) (sin.f64 b)) (*.f64 a (sin.f64 b))))
(fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (*.f64 (sin.f64 b) (-.f64 (*.f64 -1/120 (pow.f64 a 5)) a)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1/120 (*.f64 (sin.f64 b) (pow.f64 a 5))) (*.f64 1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7))))))
(fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 -1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)) (*.f64 1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7))))))
(fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (-.f64 (fma.f64 -1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)) (*.f64 (pow.f64 a 7) (*.f64 (sin.f64 b) 1/5040))) (*.f64 a (sin.f64 b))))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (sin.f64 b) (+.f64 (*.f64 -1/120 (pow.f64 a 5)) (*.f64 1/5040 (pow.f64 a 7)))))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)))
(neg.f64 (*.f64 (sin.f64 a) (sin.f64 b)))
(*.f64 (sin.f64 a) (neg.f64 (sin.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 b (/.f64 (cos.f64 a) r))
(*.f64 (/.f64 r (cos.f64 a)) b)
(+.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 b (/.f64 (cos.f64 a) r)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (*.f64 (/.f64 r (cos.f64 a)) b) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r))))
(+.f64 (*.f64 (/.f64 r (cos.f64 a)) b) (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r))
(+.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 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 b (/.f64 (cos.f64 a) r)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r))) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) r) (pow.f64 (cos.f64 a) 3))) (*.f64 (/.f64 r (cos.f64 a)) b)))
(+.f64 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r) (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r)) (*.f64 (/.f64 r (cos.f64 a)) b)))
(+.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 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 b (/.f64 (cos.f64 a) r)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))) (neg.f64 (*.f64 (pow.f64 b 4) (fma.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))))) (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) r)) -1/3)))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r))) (-.f64 (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) r) (pow.f64 (cos.f64 a) 3))) (*.f64 (/.f64 r (cos.f64 a)) b)) (*.f64 (pow.f64 b 4) (-.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) -1/3) (pow.f64 (cos.f64 a) 2)) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) r) (pow.f64 (cos.f64 a) 3))))))))
(-.f64 (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r)) (*.f64 (/.f64 r (cos.f64 a)) b)) (-.f64 (*.f64 (pow.f64 b 4) (-.f64 (/.f64 (sin.f64 a) (/.f64 (/.f64 (pow.f64 (cos.f64 a) 2) r) -1/3)) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r))))) (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r)))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 (/.f64 r (cos.f64 b)) (sin.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 (sin.f64 b) (/.f64 (cos.f64 b) r)) (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)))
(+.f64 (*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b)) (*.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) r))
(+.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) r)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (*.f64 (*.f64 a a) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))))))
(+.f64 (*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b)) (-.f64 (*.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) r) (*.f64 a (*.f64 a (-.f64 (*.f64 -1/2 (*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) r))))))
(+.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) r)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) r)) -1/3))) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) r)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))
(+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (-.f64 (-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (*.f64 a a) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))))) (*.f64 (pow.f64 a 3) (fma.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) r) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))))))))
(+.f64 (*.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) r) (-.f64 (*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 (fma.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) r) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) r)))) a) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) r))))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (neg.f64 (*.f64 b (sin.f64 a))))
(-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))
(+.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) (fma.f64 -1 (*.f64 b (sin.f64 a)) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)))))
(+.f64 (cos.f64 a) (fma.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)) (*.f64 b (neg.f64 (sin.f64 a)))))
(+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))
(+.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) (fma.f64 -1 (*.f64 b (sin.f64 a)) (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b))))))
(+.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))) (fma.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)) (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 3) 1/6))))
(+.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (cos.f64 b))
(-.f64 (cos.f64 b) (*.f64 a (sin.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)))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b)))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.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))))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b))) (*.f64 a (sin.f64 b)))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.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)

series10.0ms (0.1%)

Counts
2 → 40
Calls

15 calls:

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

rewrite60.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
776×pow1_binary64
714×add-log-exp_binary64
714×log1p-expm1-u_binary64
714×expm1-log1p-u_binary64
697×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0715
114415
2189615
Stop Event
node limit
Counts
2 → 53
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 1 (/.f64 b (cos.f64 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 b (/.f64 1 (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 1 (/.f64 b (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 b (cos.f64 a))) (pow.f64 (cbrt.f64 (/.f64 b (cos.f64 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 b (cos.f64 a))) 2) (cbrt.f64 (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) (/.f64 1 (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 b (cos.f64 a))) (sqrt.f64 (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (/.f64 1 (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 b) (/.f64 1 (neg.f64 (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 a)) b)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 b) 2) 1) (/.f64 (cbrt.f64 b) (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 b) 1) (/.f64 (sqrt.f64 b) (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (/.f64 b (cbrt.f64 (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 b) 2) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (/.f64 (sqrt.f64 b) (cbrt.f64 (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (cos.f64 a))) (/.f64 b (sqrt.f64 (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 b) 2) (sqrt.f64 (cos.f64 a))) (/.f64 (cbrt.f64 b) (sqrt.f64 (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 pow.f64 (pow.f64 (/.f64 b (cos.f64 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 b (cos.f64 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 b (cos.f64 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 a) b) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 b (neg.f64 (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 b (cos.f64 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 b (cos.f64 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 b 3) (pow.f64 (cos.f64 a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 b (cos.f64 a))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (/.f64 b (cos.f64 a)) r)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 r (/.f64 (cos.f64 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cos.f64 a) (*.f64 b r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b r) (cos.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 b r)) (neg.f64 (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 b r) 1) (cos.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 b r) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 b r) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 b) r) (neg.f64 (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (neg.f64 b)) (neg.f64 (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 b (cos.f64 a)) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 b (cos.f64 a)) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 r) (/.f64 b (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 b (cos.f64 a)) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 b (cos.f64 a)) 3) (pow.f64 r 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 r 3) (pow.f64 (/.f64 b (cos.f64 a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 b (cos.f64 a)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 b (cos.f64 a)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 b (cos.f64 a)) r)))))))

simplify50.0ms (0.3%)

Algorithm
egg-herbie
Rules
692×distribute-rgt-in_binary64
579×fma-def_binary64
541×distribute-lft-neg-in_binary64
538×distribute-rgt-neg-in_binary64
448×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
061511
1212472
2862452
34256442
Stop Event
node limit
Counts
93 → 70
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))
Outputs
b
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) b)) b)
(fma.f64 1/2 (*.f64 b (*.f64 a a)) b)
(*.f64 b (fma.f64 1/2 (*.f64 a a) 1))
(+.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))
(fma.f64 1/2 (*.f64 b (*.f64 a a)) (fma.f64 -1 (*.f64 (pow.f64 a 4) (*.f64 b -5/24)) b))
(fma.f64 1/2 (*.f64 b (*.f64 a a)) (-.f64 b (*.f64 b (*.f64 -5/24 (pow.f64 a 4)))))
(fma.f64 b (*.f64 1/2 (*.f64 a a)) (fma.f64 (pow.f64 a 4) (*.f64 b 5/24) b))
(*.f64 b (-.f64 (fma.f64 1/2 (*.f64 a a) 1) (*.f64 (pow.f64 a 4) -5/24)))
(+.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)))
(fma.f64 1/2 (*.f64 b (*.f64 a a)) (fma.f64 -1 (*.f64 (pow.f64 a 4) (*.f64 b -5/24)) (fma.f64 -1 (*.f64 (pow.f64 a 6) (fma.f64 1/48 b (fma.f64 1/2 (*.f64 b -5/24) (*.f64 b -1/720)))) b)))
(fma.f64 1/2 (*.f64 b (*.f64 a a)) (-.f64 (-.f64 b (*.f64 (pow.f64 a 6) (fma.f64 b 1/48 (fma.f64 b -1/720 (*.f64 b -5/48))))) (*.f64 b (*.f64 -5/24 (pow.f64 a 4)))))
(-.f64 (fma.f64 b (*.f64 1/2 (*.f64 a a)) (fma.f64 (pow.f64 a 4) (*.f64 b 5/24) b)) (*.f64 (pow.f64 a 6) (fma.f64 b 1/48 (*.f64 b -19/180))))
(-.f64 (*.f64 b (-.f64 (fma.f64 1/2 (*.f64 a a) 1) (*.f64 (pow.f64 a 4) -5/24))) (*.f64 (pow.f64 a 6) (fma.f64 b -1/720 (*.f64 b -1/12))))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(*.f64 r b)
(*.f64 b r)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (*.f64 r b))) (*.f64 r b))
(fma.f64 1/2 (*.f64 (*.f64 a a) (*.f64 b r)) (*.f64 b r))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 a a)) 1) (*.f64 b r))
(*.f64 (*.f64 b r) (fma.f64 1/2 (*.f64 a a) 1))
(*.f64 b (*.f64 (fma.f64 1/2 (*.f64 a a) 1) 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)))))))
(fma.f64 1/2 (*.f64 (*.f64 a a) (*.f64 b r)) (fma.f64 r b (neg.f64 (*.f64 (pow.f64 a 4) (fma.f64 -1/4 (*.f64 b r) (*.f64 1/24 (*.f64 b r)))))))
(-.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 a a)) 1) (*.f64 b r)) (*.f64 (pow.f64 a 4) (*.f64 (*.f64 b r) -5/24)))
(fma.f64 (pow.f64 a 4) (*.f64 (*.f64 b r) 5/24) (*.f64 (*.f64 b r) (fma.f64 1/2 (*.f64 a a) 1)))
(*.f64 (*.f64 b r) (-.f64 (fma.f64 1/2 (*.f64 a a) 1) (*.f64 (pow.f64 a 4) -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))))))))
(fma.f64 1/2 (*.f64 (*.f64 a a) (*.f64 b r)) (fma.f64 r b (fma.f64 -1 (*.f64 (pow.f64 a 6) (fma.f64 1/2 (fma.f64 -1/4 (*.f64 b r) (*.f64 1/24 (*.f64 b r))) (fma.f64 -1/720 (*.f64 b r) (*.f64 1/48 (*.f64 b r))))) (neg.f64 (*.f64 (pow.f64 a 4) (fma.f64 -1/4 (*.f64 b r) (*.f64 1/24 (*.f64 b r))))))))
(fma.f64 1/2 (*.f64 a (*.f64 a (*.f64 b r))) (fma.f64 b r (neg.f64 (fma.f64 (pow.f64 a 6) (fma.f64 1/2 (*.f64 (*.f64 b r) -5/24) (*.f64 (*.f64 b r) 7/360)) (*.f64 (pow.f64 a 4) (*.f64 (*.f64 b r) -5/24))))))
(-.f64 (fma.f64 (pow.f64 a 4) (*.f64 (*.f64 b r) 5/24) (*.f64 (*.f64 b r) (fma.f64 1/2 (*.f64 a a) 1))) (*.f64 (pow.f64 a 6) (fma.f64 b (*.f64 1/48 r) (*.f64 (*.f64 b r) -19/180))))
(-.f64 (*.f64 (*.f64 b r) (-.f64 (fma.f64 1/2 (*.f64 a a) 1) (*.f64 (pow.f64 a 4) -5/24))) (*.f64 (pow.f64 a 6) (fma.f64 b (*.f64 1/48 r) (*.f64 (*.f64 b r) -19/180))))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 45 to 10 computations (77.8% saved)

series18.0ms (0.1%)

Counts
3 → 56
Calls

21 calls:

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

rewrite72.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
692×prod-diff_binary64
660×log-prod_binary64
331×pow2_binary64
235×fma-def_binary64
231×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01141
123741
2334441
Stop Event
node limit
Counts
3 → 86
Calls
Call 1
Inputs
(/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(*.f64 (sin.f64 a) b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))) (sqrt.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (neg.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 2)) (/.f64 (sin.f64 b) (cbrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 2)) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))) (/.f64 (sin.f64 b) (sqrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (sqrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 (*.f64 b (sin.f64 a)) 3))) (fma.f64 (*.f64 b (sin.f64 a)) (fma.f64 b (sin.f64 a) (cos.f64 a)) (pow.f64 (cos.f64 a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 (*.f64 b (sin.f64 a)) 2))) (fma.f64 b (sin.f64 a) (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))) (sin.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))) (sin.f64 b)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (neg.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 r (/.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))) (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))) (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) 1) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 2)) (cbrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (sqrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))) (sqrt.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 3) (pow.f64 r 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 r 3) (pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))) (*.f64 (sin.f64 b) r)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 3) (pow.f64 r 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 r 3) (pow.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 b (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 b) (sin.f64 a))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 b) (sin.f64 a)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 b (sin.f64 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 b (sin.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 b (sin.f64 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 b (sin.f64 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 b (sin.f64 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 b (sin.f64 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 b (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 b (sin.f64 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 b (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 b (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 b (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 b (sin.f64 a))) 1))))))

simplify62.0ms (0.3%)

Algorithm
egg-herbie
Rules
705×associate-/r*_binary64
412×associate-*l/_binary64
326×associate-*r/_binary64
262×distribute-rgt-neg-in_binary64
257×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01742076
16201987
225861915
Stop Event
node limit
Counts
142 → 141
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 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.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 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.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)))))
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 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)))
(+.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)) (fma.f64 -1 (*.f64 (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3)) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (neg.f64 (-.f64 (/.f64 1/6 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (*.f64 b b) (-.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (-.f64 (/.f64 1/6 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))))
(+.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)) (fma.f64 -1 (/.f64 (sin.f64 a) (/.f64 (cos.f64 a) (*.f64 (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 4)))) (fma.f64 -1 (*.f64 (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3)) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))))
(+.f64 (/.f64 b (cos.f64 a)) (-.f64 (fma.f64 (neg.f64 (-.f64 (/.f64 1/6 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b))) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (*.f64 (-.f64 (/.f64 1/6 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) (pow.f64 b 4)))))
(+.f64 (/.f64 b (cos.f64 a)) (-.f64 (*.f64 (*.f64 b b) (-.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (-.f64 (/.f64 1/6 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (*.f64 (-.f64 (/.f64 1/6 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) (pow.f64 b 4)))))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))
(neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))
(/.f64 (neg.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))))
(fma.f64 -1 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (/.f64 (cos.f64 a) (*.f64 b b))) (neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))
(neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (/.f64 (cos.f64 a) (*.f64 b b)) (/.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 (*.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)))))
(fma.f64 -1 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (/.f64 (cos.f64 a) (*.f64 b b))) (*.f64 -1 (+.f64 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3))) (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))))
(-.f64 (neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3)) (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))) (/.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (*.f64 b b)) (pow.f64 (sin.f64 a) 2)))
(-.f64 (*.f64 (/.f64 (cos.f64 a) (*.f64 b b)) (/.f64 (neg.f64 (sin.f64 b)) (pow.f64 (sin.f64 a) 2))) (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3)) (/.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 (*.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))))))
(fma.f64 -1 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (/.f64 (cos.f64 a) (*.f64 b b))) (fma.f64 -1 (/.f64 (sin.f64 b) (/.f64 (*.f64 (pow.f64 b 4) (pow.f64 (sin.f64 a) 4)) (pow.f64 (cos.f64 a) 3))) (*.f64 -1 (+.f64 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3))) (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))))
(-.f64 (-.f64 (neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3)) (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 4)) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 4)))) (/.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (*.f64 b b)) (pow.f64 (sin.f64 a) 2)))
(-.f64 (neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3)) (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))) (+.f64 (*.f64 (/.f64 (sin.f64 b) (*.f64 b b)) (/.f64 (cos.f64 a) (pow.f64 (sin.f64 a) 2))) (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 4)) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 4)))))
(*.f64 -1 (/.f64 (sin.f64 b) (*.f64 (sin.f64 a) b)))
(neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))
(/.f64 (neg.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))))
(fma.f64 -1 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (/.f64 (cos.f64 a) (*.f64 b b))) (neg.f64 (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))
(neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (/.f64 (cos.f64 a) (*.f64 b b)) (/.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 (*.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)))))
(fma.f64 -1 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (/.f64 (cos.f64 a) (*.f64 b b))) (*.f64 -1 (+.f64 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3))) (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))))
(-.f64 (neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3)) (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))) (/.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (*.f64 b b)) (pow.f64 (sin.f64 a) 2)))
(-.f64 (*.f64 (/.f64 (cos.f64 a) (*.f64 b b)) (/.f64 (neg.f64 (sin.f64 b)) (pow.f64 (sin.f64 a) 2))) (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3)) (/.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 (*.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))))))
(fma.f64 -1 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (/.f64 (cos.f64 a) (*.f64 b b))) (fma.f64 -1 (/.f64 (sin.f64 b) (/.f64 (*.f64 (pow.f64 b 4) (pow.f64 (sin.f64 a) 4)) (pow.f64 (cos.f64 a) 3))) (*.f64 -1 (+.f64 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3))) (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a)))))))
(-.f64 (-.f64 (neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3)) (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))) (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 4)) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 4)))) (/.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (*.f64 b b)) (pow.f64 (sin.f64 a) 2)))
(-.f64 (neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 3)) (/.f64 (sin.f64 b) (*.f64 b (sin.f64 a))))) (+.f64 (*.f64 (/.f64 (sin.f64 b) (*.f64 b b)) (/.f64 (cos.f64 a) (pow.f64 (sin.f64 a) 2))) (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 4)) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 4)))))
(sin.f64 b)
(+.f64 (sin.f64 b) (*.f64 (sin.f64 b) (*.f64 a b)))
(+.f64 (sin.f64 b) (*.f64 (sin.f64 b) (*.f64 b a)))
(*.f64 (+.f64 (*.f64 b a) 1) (sin.f64 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) (fma.f64 (sin.f64 b) (*.f64 b a) (neg.f64 (*.f64 (*.f64 a a) (fma.f64 -1/2 (sin.f64 b) (neg.f64 (*.f64 (*.f64 b b) (sin.f64 b))))))))
(-.f64 (*.f64 (+.f64 (*.f64 b a) 1) (sin.f64 b)) (*.f64 (*.f64 a a) (fma.f64 (sin.f64 b) -1/2 (*.f64 (*.f64 b b) (neg.f64 (sin.f64 b))))))
(+.f64 (sin.f64 b) (*.f64 a (-.f64 (*.f64 b (sin.f64 b)) (*.f64 a (*.f64 (sin.f64 b) (-.f64 -1/2 (*.f64 b b)))))))
(+.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) (fma.f64 (sin.f64 b) (*.f64 b a) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1/2 (sin.f64 b) (neg.f64 (*.f64 (*.f64 b b) (sin.f64 b))))) (neg.f64 (*.f64 (pow.f64 a 3) (fma.f64 -1/2 (*.f64 b (sin.f64 b)) (fma.f64 b (fma.f64 -1/2 (sin.f64 b) (neg.f64 (*.f64 (*.f64 b b) (sin.f64 b)))) (*.f64 (*.f64 1/6 (sin.f64 b)) b))))))))
(+.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (*.f64 b a) (neg.f64 (fma.f64 (*.f64 a a) (fma.f64 (sin.f64 b) -1/2 (*.f64 (*.f64 b b) (neg.f64 (sin.f64 b)))) (*.f64 (pow.f64 a 3) (fma.f64 -1/2 (*.f64 b (sin.f64 b)) (*.f64 b (+.f64 (fma.f64 (sin.f64 b) -1/2 (*.f64 (*.f64 b b) (neg.f64 (sin.f64 b)))) (*.f64 1/6 (sin.f64 b))))))))))
(-.f64 (*.f64 (+.f64 (*.f64 b a) 1) (sin.f64 b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 (sin.f64 b) (-.f64 -1/2 (*.f64 b b))) (*.f64 (+.f64 (*.f64 b (*.f64 (sin.f64 b) (-.f64 -1/2 (*.f64 b b)))) (*.f64 b (*.f64 (sin.f64 b) -1/3))) a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 b (/.f64 (cos.f64 a) r))
(*.f64 (/.f64 b (cos.f64 a)) r)
(*.f64 (/.f64 r (cos.f64 a)) b)
(+.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 b (/.f64 (cos.f64 a) r)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r))))
(+.f64 (*.f64 (/.f64 r (cos.f64 a)) b) (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))) r))
(+.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 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)) (fma.f64 (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))) (pow.f64 b 3) (/.f64 b (/.f64 (cos.f64 a) r))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r))) (fma.f64 (pow.f64 b 3) (fma.f64 -1/6 (/.f64 r (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))) (*.f64 (/.f64 b (cos.f64 a)) r)))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))) r) (fma.f64 (pow.f64 b 3) (*.f64 (/.f64 r (cos.f64 a)) (+.f64 -1/6 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)))) (*.f64 (/.f64 r (cos.f64 a)) b)))
(+.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 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (fma.f64 (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))) (pow.f64 b 3) (/.f64 b (/.f64 (cos.f64 a) r))) (/.f64 (sin.f64 a) (/.f64 (cos.f64 a) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r))) (+.f64 (fma.f64 (pow.f64 b 3) (fma.f64 -1/6 (/.f64 r (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))) (*.f64 (/.f64 b (cos.f64 a)) r)) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (*.f64 (pow.f64 b 4) (fma.f64 -1/6 (/.f64 r (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))))))
(+.f64 (fma.f64 (pow.f64 b 3) (*.f64 (/.f64 r (cos.f64 a)) (+.f64 -1/6 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)))) (*.f64 (/.f64 r (cos.f64 a)) b)) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (+.f64 (/.f64 (*.f64 b (*.f64 b r)) (cos.f64 a)) (*.f64 (pow.f64 b 4) (*.f64 (/.f64 r (cos.f64 a)) (+.f64 -1/6 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2))))))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))
(neg.f64 (*.f64 (/.f64 (sin.f64 b) (sin.f64 a)) (/.f64 r b)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 b (/.f64 r (sin.f64 a))))
(*.f64 (/.f64 (neg.f64 (sin.f64 b)) (*.f64 b (sin.f64 a))) r)
(+.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))))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (pow.f64 (sin.f64 a) 2)) (*.f64 b b)) (neg.f64 (*.f64 (/.f64 (sin.f64 b) (sin.f64 a)) (/.f64 r b))))
(neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (/.f64 r (/.f64 (*.f64 b b) (cos.f64 a))) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) b) (sin.f64 a))))
(neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (*.f64 (/.f64 r b) (/.f64 (cos.f64 a) b)) (/.f64 (*.f64 (sin.f64 b) (/.f64 r 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 (*.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)))))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (pow.f64 (sin.f64 a) 2)) (*.f64 b b)) (fma.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 b 3) (pow.f64 (sin.f64 a) 3))) (neg.f64 (*.f64 (/.f64 (sin.f64 b) (sin.f64 a)) (/.f64 r b)))))
(-.f64 (neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (/.f64 (pow.f64 b 3) r)) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) b) (sin.f64 a)))) (*.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (*.f64 b b)) (/.f64 r (pow.f64 (sin.f64 a) 2))))
(-.f64 (*.f64 (*.f64 (/.f64 (cos.f64 a) (*.f64 b b)) (/.f64 (neg.f64 (sin.f64 b)) (pow.f64 (sin.f64 a) 2))) r) (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (*.f64 (/.f64 r (pow.f64 b 3)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (sin.f64 b) (/.f64 r 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 (*.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))))))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (pow.f64 (sin.f64 a) 2)) (*.f64 b b)) (fma.f64 -1 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 4)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) r) (pow.f64 b 4))) (fma.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 b 3) (pow.f64 (sin.f64 a) 3))) (neg.f64 (*.f64 (/.f64 (sin.f64 b) (sin.f64 a)) (/.f64 r b))))))
(-.f64 (-.f64 (neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (/.f64 (pow.f64 b 3) r)) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) b) (sin.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 4)) (/.f64 (pow.f64 (cos.f64 a) 3) (/.f64 (pow.f64 b 4) r)))) (*.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (*.f64 b b)) (/.f64 r (pow.f64 (sin.f64 a) 2))))
(-.f64 (-.f64 (*.f64 (*.f64 (/.f64 (cos.f64 a) (*.f64 b b)) (/.f64 (neg.f64 (sin.f64 b)) (pow.f64 (sin.f64 a) 2))) r) (*.f64 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 4)) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 4))) r)) (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (*.f64 (/.f64 r (pow.f64 b 3)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (sin.f64 b) (/.f64 r b)) (sin.f64 a))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (*.f64 (sin.f64 a) b)))
(neg.f64 (*.f64 (/.f64 (sin.f64 b) (sin.f64 a)) (/.f64 r b)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 b (/.f64 r (sin.f64 a))))
(*.f64 (/.f64 (neg.f64 (sin.f64 b)) (*.f64 b (sin.f64 a))) r)
(+.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))))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (pow.f64 (sin.f64 a) 2)) (*.f64 b b)) (neg.f64 (*.f64 (/.f64 (sin.f64 b) (sin.f64 a)) (/.f64 r b))))
(neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (/.f64 r (/.f64 (*.f64 b b) (cos.f64 a))) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) b) (sin.f64 a))))
(neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 2)) (*.f64 (/.f64 r b) (/.f64 (cos.f64 a) b)) (/.f64 (*.f64 (sin.f64 b) (/.f64 r 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 (*.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)))))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (pow.f64 (sin.f64 a) 2)) (*.f64 b b)) (fma.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 b 3) (pow.f64 (sin.f64 a) 3))) (neg.f64 (*.f64 (/.f64 (sin.f64 b) (sin.f64 a)) (/.f64 r b)))))
(-.f64 (neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (/.f64 (pow.f64 b 3) r)) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) b) (sin.f64 a)))) (*.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (*.f64 b b)) (/.f64 r (pow.f64 (sin.f64 a) 2))))
(-.f64 (*.f64 (*.f64 (/.f64 (cos.f64 a) (*.f64 b b)) (/.f64 (neg.f64 (sin.f64 b)) (pow.f64 (sin.f64 a) 2))) r) (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (*.f64 (/.f64 r (pow.f64 b 3)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (sin.f64 b) (/.f64 r 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 (*.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))))))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (sin.f64 b) (*.f64 (cos.f64 a) r)) (pow.f64 (sin.f64 a) 2)) (*.f64 b b)) (fma.f64 -1 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 4)) (/.f64 (*.f64 (pow.f64 (cos.f64 a) 3) r) (pow.f64 b 4))) (fma.f64 -1 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (pow.f64 b 3) (pow.f64 (sin.f64 a) 3))) (neg.f64 (*.f64 (/.f64 (sin.f64 b) (sin.f64 a)) (/.f64 r b))))))
(-.f64 (-.f64 (neg.f64 (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (/.f64 (pow.f64 (cos.f64 a) 2) (/.f64 (pow.f64 b 3) r)) (/.f64 (/.f64 (*.f64 (sin.f64 b) r) b) (sin.f64 a)))) (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 4)) (/.f64 (pow.f64 (cos.f64 a) 3) (/.f64 (pow.f64 b 4) r)))) (*.f64 (/.f64 (*.f64 (cos.f64 a) (sin.f64 b)) (*.f64 b b)) (/.f64 r (pow.f64 (sin.f64 a) 2))))
(-.f64 (-.f64 (*.f64 (*.f64 (/.f64 (cos.f64 a) (*.f64 b b)) (/.f64 (neg.f64 (sin.f64 b)) (pow.f64 (sin.f64 a) 2))) r) (*.f64 (*.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 4)) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 4))) r)) (fma.f64 (/.f64 (sin.f64 b) (pow.f64 (sin.f64 a) 3)) (*.f64 (/.f64 r (pow.f64 b 3)) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (sin.f64 b) (/.f64 r b)) (sin.f64 a))))
(*.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 (*.f64 a (*.f64 b r)) r))
(*.f64 (sin.f64 b) (fma.f64 a (*.f64 b r) r))
(*.f64 (sin.f64 b) (fma.f64 (*.f64 b a) r 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)))
(fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1/2 (*.f64 (sin.f64 b) r) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 b b) r))))) (*.f64 (sin.f64 b) (+.f64 (*.f64 a (*.f64 b r)) r)))
(-.f64 (*.f64 (sin.f64 b) (fma.f64 a (*.f64 b r) r)) (*.f64 (*.f64 a a) (fma.f64 -1/2 (*.f64 (sin.f64 b) r) (*.f64 (*.f64 (*.f64 b b) (neg.f64 (sin.f64 b))) r))))
(-.f64 (*.f64 (sin.f64 b) (fma.f64 (*.f64 b a) r r)) (*.f64 (*.f64 a a) (*.f64 (*.f64 (sin.f64 b) r) (-.f64 -1/2 (*.f64 b b)))))
(+.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))))
(fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1/2 (*.f64 (sin.f64 b) r) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 b b) r))))) (fma.f64 -1 (*.f64 (pow.f64 a 3) (fma.f64 (fma.f64 -1/2 (*.f64 (sin.f64 b) r) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (*.f64 b b) r)))) b (*.f64 (*.f64 (*.f64 (sin.f64 b) r) b) -1/3))) (*.f64 (sin.f64 b) (+.f64 (*.f64 a (*.f64 b r)) r))))
(-.f64 (-.f64 (*.f64 (sin.f64 b) (fma.f64 a (*.f64 b r) r)) (*.f64 (pow.f64 a 3) (fma.f64 b (fma.f64 -1/2 (*.f64 (sin.f64 b) r) (*.f64 (*.f64 (*.f64 b b) (neg.f64 (sin.f64 b))) r)) (*.f64 (sin.f64 b) (*.f64 (*.f64 b r) -1/3))))) (*.f64 (*.f64 a a) (fma.f64 -1/2 (*.f64 (sin.f64 b) r) (*.f64 (*.f64 (*.f64 b b) (neg.f64 (sin.f64 b))) r))))
(-.f64 (*.f64 (sin.f64 b) (fma.f64 (*.f64 b a) r r)) (*.f64 (*.f64 a a) (+.f64 (*.f64 (*.f64 (sin.f64 b) r) (-.f64 -1/2 (*.f64 b b))) (*.f64 (fma.f64 b (*.f64 (*.f64 (sin.f64 b) r) (-.f64 -1/2 (*.f64 b b))) (*.f64 r (*.f64 b (*.f64 (sin.f64 b) -1/3)))) a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))) r)
(*.f64 a b)
(*.f64 b a)
(+.f64 (*.f64 a b) (*.f64 -1/6 (*.f64 (pow.f64 a 3) b)))
(fma.f64 a b (*.f64 -1/6 (*.f64 b (pow.f64 a 3))))
(*.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))))
(fma.f64 a b (fma.f64 1/120 (*.f64 b (pow.f64 a 5)) (*.f64 -1/6 (*.f64 b (pow.f64 a 3)))))
(fma.f64 b a (*.f64 b (+.f64 (*.f64 (pow.f64 a 3) -1/6) (*.f64 1/120 (pow.f64 a 5)))))
(*.f64 b (+.f64 a (+.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)))))
(fma.f64 a b (fma.f64 1/120 (*.f64 b (pow.f64 a 5)) (fma.f64 -1/6 (*.f64 b (pow.f64 a 3)) (*.f64 -1/5040 (*.f64 b (pow.f64 a 7))))))
(fma.f64 b a (fma.f64 1/120 (*.f64 b (pow.f64 a 5)) (*.f64 b (+.f64 (*.f64 (pow.f64 a 3) -1/6) (*.f64 -1/5040 (pow.f64 a 7))))))
(*.f64 b (+.f64 (+.f64 (*.f64 (pow.f64 a 3) -1/6) (*.f64 -1/5040 (pow.f64 a 7))) (+.f64 a (*.f64 1/120 (pow.f64 a 5)))))

localize23.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3)))
0.5b
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))
0.6b
(pow.f64 (cos.f64 (+.f64 b a)) 3)
2.7b
(cos.f64 (+.f64 b a))
Compiler

Compiled 51 to 21 computations (58.8% saved)

series19.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
9.0ms
b
@inf
(pow.f64 (cos.f64 (+.f64 b a)) 3)
1.0ms
b
@0
(pow.f64 (cos.f64 (+.f64 b a)) 3)
1.0ms
a
@0
(pow.f64 (cos.f64 (+.f64 b a)) 3)
1.0ms
b
@-inf
(pow.f64 (cos.f64 (+.f64 b a)) 3)
1.0ms
a
@-inf
(pow.f64 (cos.f64 (+.f64 b a)) 3)

rewrite78.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
589×prod-diff_binary64
483×log-prod_binary64
297×pow-prod-down_binary64
273×pow2_binary64
217×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01026
122726
2281826
Stop Event
node limit
Counts
3 → 135
Calls
Call 1
Inputs
(pow.f64 (cos.f64 (+.f64 b a)) 3)
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))
(/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (cos.f64 (+.f64 b a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) (pow.f64 (cos.f64 (+.f64 b a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cos.f64 (+.f64 b a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) (*.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 (+.f64 b a)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cos.f64 (+.f64 b a)) 5/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3/2) (pow.f64 (cos.f64 (+.f64 b a)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) 5/2) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2) 1) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (cos.f64 (+.f64 b a)) (cbrt.f64 (cos.f64 (+.f64 b a)))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 9))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 3 (log.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 (+.f64 b a)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (sqrt.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 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (+.f64 b a)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (+.f64 b a)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (/.f64 (*.f64 b b) (-.f64 b a))) (cos.f64 (/.f64 (*.f64 a a) (-.f64 b a)))) (*.f64 (sin.f64 (/.f64 (*.f64 b b) (-.f64 b a))) (sin.f64 (/.f64 (*.f64 a a) (-.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))) (log.f64 (sqrt.f64 (exp.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 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2) (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 2) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2)) (cos.f64 (-.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 9) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.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 expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 b a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 (+.f64 b a)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 b a)) 1 (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) (cbrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/3) (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))
((#(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 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (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 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) -2) (/.f64 (sin.f64 b) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) -1/2) (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (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 pow.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 1))))))

simplify69.0ms (0.4%)

Algorithm
egg-herbie
Rules
510×associate-+l+_binary64
452×associate-+r+_binary64
392×*-commutative_binary64
333×distribute-rgt-in_binary64
323×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01761508
16231445
222161364
Stop Event
node limit
Counts
207 → 186
Calls
Call 1
Inputs
(pow.f64 (cos.f64 a) 3)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) b) (pow.f64 (cos.f64 a) 3))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) b) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2)))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 a) 2) (cos.f64 a))) (*.f64 -1/2 (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 3)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) b) (+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))))) (+.f64 (*.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) (cos.f64 a)) (*.f64 1/3 (*.f64 (sin.f64 a) (cos.f64 a))))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))))) (pow.f64 b 3)) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2)))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 a) 2) (cos.f64 a))) (*.f64 -1/2 (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 3))))
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 3)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 3)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 3)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 3)
(pow.f64 (cos.f64 b) 3)
(+.f64 (pow.f64 (cos.f64 b) 3) (*.f64 a (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))))
(+.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 b) 2) (cos.f64 b))) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (pow.f64 a 2)) (*.f64 a (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))))))
(+.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 b) 2) (cos.f64 b))) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (pow.f64 a 2)) (+.f64 (*.f64 a (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))) (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 (sin.f64 b) (cos.f64 b)) (*.f64 1/3 (*.f64 (sin.f64 b) (cos.f64 b))))) (+.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))))) (pow.f64 a 3)))))
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 3)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 3)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 3)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 3)
(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))))
Outputs
(pow.f64 (cos.f64 a) 3)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) b) (pow.f64 (cos.f64 a) 3))
(fma.f64 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -3) b (pow.f64 (cos.f64 a) 3))
(fma.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) -3)) b (pow.f64 (cos.f64 a) 3))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) b) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2)))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 a) 2) (cos.f64 a))) (*.f64 -1/2 (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 3)))
(fma.f64 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -3) b (fma.f64 (fma.f64 (cos.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2))) (fma.f64 2 (*.f64 (cos.f64 a) (pow.f64 (sin.f64 a) 2)) (*.f64 (pow.f64 (cos.f64 a) 3) -1/2))) (*.f64 b b) (pow.f64 (cos.f64 a) 3)))
(fma.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) -3)) b (fma.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 a) 3) -1/2) (*.f64 (cos.f64 a) (+.f64 (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (*.f64 2 (pow.f64 (sin.f64 a) 2))))) (*.f64 b b) (pow.f64 (cos.f64 a) 3)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) b) (+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))))) (+.f64 (*.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) (cos.f64 a)) (*.f64 1/3 (*.f64 (sin.f64 a) (cos.f64 a))))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))))) (pow.f64 b 3)) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2)))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 a) 2) (cos.f64 a))) (*.f64 -1/2 (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 3))))
(fma.f64 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -3) b (fma.f64 (fma.f64 -1 (*.f64 (sin.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2)))) (fma.f64 (cos.f64 a) (*.f64 4/3 (*.f64 (cos.f64 a) (sin.f64 a))) (*.f64 7/6 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))))) (pow.f64 b 3) (fma.f64 (fma.f64 (cos.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2))) (fma.f64 2 (*.f64 (cos.f64 a) (pow.f64 (sin.f64 a) 2)) (*.f64 (pow.f64 (cos.f64 a) 3) -1/2))) (*.f64 b b) (pow.f64 (cos.f64 a) 3))))
(fma.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) -3)) b (fma.f64 (-.f64 (fma.f64 7/6 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 4/3 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (*.f64 (sin.f64 a) (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)))) (pow.f64 b 3) (fma.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 a) 3) -1/2) (*.f64 (cos.f64 a) (+.f64 (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (*.f64 2 (pow.f64 (sin.f64 a) 2))))) (*.f64 b b) (pow.f64 (cos.f64 a) 3))))
(fma.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) -3)) b (fma.f64 (+.f64 (-.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (pow.f64 (sin.f64 a) 3)) (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) 5/2)) (pow.f64 b 3) (fma.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 a) 3) -1/2) (*.f64 (cos.f64 a) (+.f64 (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (*.f64 2 (pow.f64 (sin.f64 a) 2))))) (*.f64 b b) (pow.f64 (cos.f64 a) 3))))
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 b) 3)
(+.f64 (pow.f64 (cos.f64 b) 3) (*.f64 a (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))))
(+.f64 (pow.f64 (cos.f64 b) 3) (*.f64 a (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3)))
(fma.f64 a (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)) (pow.f64 (cos.f64 b) 3))
(+.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 b) 2) (cos.f64 b))) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (pow.f64 a 2)) (*.f64 a (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))))))
(+.f64 (pow.f64 (cos.f64 b) 3) (fma.f64 (fma.f64 (cos.f64 b) (fma.f64 -1 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) (fma.f64 2 (*.f64 (cos.f64 b) (pow.f64 (sin.f64 b) 2)) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (*.f64 a a) (*.f64 a (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3))))
(+.f64 (fma.f64 a (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)) (pow.f64 (cos.f64 b) 3)) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)) (*.f64 (cos.f64 b) (+.f64 (-.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 2 (pow.f64 (sin.f64 b) 2))))) (*.f64 a a)))
(+.f64 (pow.f64 (cos.f64 b) 3) (*.f64 a (+.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)) (*.f64 a (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 3)) (*.f64 3 (*.f64 (cos.f64 b) (pow.f64 (sin.f64 b) 2)))))))))
(+.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 b) 2) (cos.f64 b))) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (pow.f64 a 2)) (+.f64 (*.f64 a (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))) (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 (sin.f64 b) (cos.f64 b)) (*.f64 1/3 (*.f64 (sin.f64 b) (cos.f64 b))))) (+.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))))) (pow.f64 a 3)))))
(+.f64 (pow.f64 (cos.f64 b) 3) (fma.f64 (fma.f64 (cos.f64 b) (fma.f64 -1 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) (fma.f64 2 (*.f64 (cos.f64 b) (pow.f64 (sin.f64 b) 2)) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (*.f64 a a) (fma.f64 a (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3) (*.f64 (fma.f64 -1 (*.f64 (sin.f64 b) (fma.f64 -1 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) (fma.f64 (cos.f64 b) (*.f64 4/3 (*.f64 (cos.f64 b) (sin.f64 b))) (*.f64 7/6 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (pow.f64 a 3)))))
(+.f64 (pow.f64 (cos.f64 b) 3) (fma.f64 (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)) (*.f64 (cos.f64 b) (+.f64 (-.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 2 (pow.f64 (sin.f64 b) 2))))) (*.f64 a a) (fma.f64 a (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)) (*.f64 (-.f64 (fma.f64 7/6 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) (*.f64 4/3 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) (*.f64 (sin.f64 b) (-.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))) (pow.f64 a 3)))))
(+.f64 (fma.f64 a (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)) (pow.f64 (cos.f64 b) 3)) (*.f64 (*.f64 a a) (+.f64 (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 3)) (*.f64 3 (*.f64 (cos.f64 b) (pow.f64 (sin.f64 b) 2))))) (*.f64 a (+.f64 (-.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 3)) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) 5/2))))))
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 3)
(pow.f64 (cos.f64 (+.f64 a b)) 3)
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (neg.f64 (*.f64 (sin.f64 a) b)))
(-.f64 (cos.f64 a) (*.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) (fma.f64 -1 (*.f64 (sin.f64 a) b) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)))))
(+.f64 (cos.f64 a) (-.f64 (*.f64 (cos.f64 a) (*.f64 (*.f64 b b) -1/2)) (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 b (*.f64 (cos.f64 a) -1/2)) (sin.f64 a))))
(+.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) (fma.f64 -1 (*.f64 (sin.f64 a) b) (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b))))))
(+.f64 (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b)) (fma.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)) (*.f64 (pow.f64 b 3) (*.f64 (sin.f64 a) 1/6))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))
(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))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (cos.f64 b))
(-.f64 (cos.f64 b) (*.f64 a (sin.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)))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b)))
(-.f64 (fma.f64 -1/2 (*.f64 a (*.f64 a (cos.f64 b))) (cos.f64 b)) (*.f64 a (sin.f64 b)))
(fma.f64 (+.f64 1 (*.f64 a (*.f64 a -1/2))) (cos.f64 b) (*.f64 (sin.f64 b) (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/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 a (*.f64 a (cos.f64 b))) (cos.f64 b))) (*.f64 a (sin.f64 b)))
(+.f64 (*.f64 (cos.f64 b) (+.f64 1 (*.f64 a (*.f64 a -1/2)))) (*.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 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (*.f64 b b) (/.f64 (sin.f64 a) (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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (/.f64 1/3 (cos.f64 a)))))))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (fma.f64 -1 (*.f64 (pow.f64 b 4) (fma.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (fma.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (neg.f64 (/.f64 (sin.f64 a) (/.f64 (cos.f64 a) (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))))) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (-.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))))))
(+.f64 (/.f64 b (cos.f64 a)) (-.f64 (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (/.f64 1/3 (cos.f64 a)))))) (*.f64 (pow.f64 b 4) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3 (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (neg.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (/.f64 1/3 (cos.f64 a)))))))))
(/.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 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (/.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 (sin.f64 b) (cos.f64 b)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 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) 2) (pow.f64 (cos.f64 b) 2)) a) (*.f64 a (*.f64 a (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a (-.f64 (*.f64 (/.f64 -1/2 (cos.f64 b)) (sin.f64 b)) (pow.f64 (/.f64 (sin.f64 b) (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)))))
(fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.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 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) (*.f64 a (*.f64 a (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.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 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (/.f64 (sin.f64 b) (cos.f64 b))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a (-.f64 (*.f64 (/.f64 -1/2 (cos.f64 b)) (sin.f64 b)) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3))))) (*.f64 (pow.f64 a 3) (fma.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 -1/2 (cos.f64 b)) (sin.f64 b)) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 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)))

localize52.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6)))))
2.9b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))
3.4b
(*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6)))
6.9b
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))
Compiler

Compiled 142 to 78 computations (45.1% saved)

series26.0ms (0.1%)

Counts
4 → 108
Calls

27 calls:

TimeVariablePointExpression
4.0ms
r
@0
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))
2.0ms
b
@0
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))
2.0ms
b
@inf
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))
2.0ms
b
@0
(/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6)))))
1.0ms
a
@inf
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))

rewrite104.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
391×log1p-udef_binary64
390×expm1-udef_binary64
244×add-sqr-sqrt_binary64
235×pow1_binary64
234×*-un-lft-identity_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
022120
1488104
26770104
Stop Event
node limit
Counts
4 → 122
Calls
Call 1
Inputs
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))
(*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6)))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (-.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) (/.f64 (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 2) (-.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 2) (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) (sqrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (*.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (-.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 2)) (/.f64 1 (-.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (*.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (-.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b))))) (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) (-.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 3)) (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (*.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (-.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 2) (-.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (*.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 2)) (-.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (*.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (-.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 2))) (neg.f64 (-.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 2) (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2)) (-.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 a 3) 1/6 a) (sin.f64 b) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) 2) (cbrt.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b))) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) (sqrt.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b))) (sqrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b))) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a (sin.f64 b)) (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6)) (*.f64 a (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a (sin.f64 b)) 1) (*.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6)) 3)) (+.f64 (*.f64 (*.f64 a (sin.f64 b)) (*.f64 a (sin.f64 b))) (-.f64 (*.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6)) (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6))) (*.f64 (*.f64 a (sin.f64 b)) (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 a (sin.f64 b)) (*.f64 a (sin.f64 b))) (*.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6)) (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6)))) (-.f64 (*.f64 a (sin.f64 b)) (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 a 3) (*.f64 1/216 (pow.f64 (pow.f64 a 3) 3))) (sin.f64 b)) (fma.f64 a a (+.f64 (*.f64 1/36 (pow.f64 a 6)) (*.f64 (pow.f64 a 4) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (fma.f64 (pow.f64 a 3) 1/6 a) 2) (sin.f64 b)) (fma.f64 (pow.f64 a 3) 1/6 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) (+.f64 (pow.f64 a 3) (*.f64 1/216 (pow.f64 (pow.f64 a 3) 3)))) (fma.f64 a a (+.f64 (*.f64 1/36 (pow.f64 a 6)) (*.f64 (pow.f64 a 4) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) (pow.f64 (fma.f64 (pow.f64 a 3) 1/6 a) 2)) (fma.f64 (pow.f64 a 3) 1/6 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 b)) (fma.f64 (pow.f64 a 3) 1/6 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a (sin.f64 b) (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 b) a (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 r (/.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) 1) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 2)) (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (sqrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) (sqrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) r))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 r 3) (pow.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 3) (pow.f64 r 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 r (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) 2) (cbrt.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) (sqrt.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (neg.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 2)) (/.f64 (sin.f64 b) (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (pow.f64 (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 2)) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) (/.f64 (sin.f64 b) (sqrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (sqrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 3))) (+.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (*.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (-.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) 2) (pow.f64 (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)) 2))) (-.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) (sin.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (neg.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 b) (fma.f64 (fma.f64 -1/2 (*.f64 a a) 1) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 (pow.f64 a 3) 1/6 a))))) 1))))))

simplify100.0ms (0.5%)

Algorithm
egg-herbie
Rules
983×times-frac_binary64
534×distribute-rgt-in_binary64
521×distribute-lft-in_binary64
287×fma-def_binary64
184×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03004659
19714287
235144106
Stop Event
node limit
Counts
230 → 215
Calls
Call 1
Inputs
(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))))
(*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1/2 (*.f64 (pow.f64 a 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 -1/2 (*.f64 (pow.f64 a 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 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1/2 (*.f64 (pow.f64 a 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 -1/2 (*.f64 (pow.f64 a 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 1 (*.f64 -1/2 (pow.f64 a 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (+.f64 (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 -1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (pow.f64 b 2))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (+.f64 (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 -1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (pow.f64 b 2)))))))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 b 7) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 -1 (*.f64 (sin.f64 b) a))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1 (*.f64 (sin.f64 b) a)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1 (*.f64 (sin.f64 b) a)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1 (*.f64 (sin.f64 b) a)))
(*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 b r) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 r (*.f64 (pow.f64 b 2) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))) (/.f64 (*.f64 r b) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 r (*.f64 (pow.f64 b 2) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) 2)) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 3))) (*.f64 -1/2 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (pow.f64 b 3)) (/.f64 (*.f64 r b) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 r (*.f64 (pow.f64 b 2) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) 2)) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 3))) (*.f64 -1/2 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (pow.f64 b 3)) (+.f64 (/.f64 (*.f64 r b) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (*.f64 -1 (*.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) 2)) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 3))) (*.f64 -1/2 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 r (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))) (*.f64 1/2 (/.f64 (*.f64 r (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))))) (pow.f64 b 4))))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (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 (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 6 (/.f64 r (pow.f64 a 3)))
(+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4)))))
(+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -36 r) (*.f64 -54 (/.f64 (*.f64 r (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))) (pow.f64 a 5)))))
(+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -108 (/.f64 (*.f64 r (cos.f64 b)) (sin.f64 b))) (+.f64 (*.f64 3 (/.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -54 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) r) (pow.f64 (sin.f64 b) 2))) (*.f64 -36 r))) (sin.f64 b))) (*.f64 36 (/.f64 (*.f64 r (cos.f64 b)) (sin.f64 b))))) (pow.f64 a 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -36 r) (*.f64 -54 (/.f64 (*.f64 r (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))) (pow.f64 a 5))))))
(*.f64 6 (/.f64 r (pow.f64 a 3)))
(+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4)))))
(+.f64 (*.f64 54 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) r) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5)))) (+.f64 (*.f64 36 (/.f64 r (pow.f64 a 5))) (+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4)))))))
(+.f64 (*.f64 54 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) r) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5)))) (+.f64 (*.f64 36 (/.f64 r (pow.f64 a 5))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -108 (/.f64 (*.f64 r (cos.f64 b)) (sin.f64 b))) (+.f64 (*.f64 36 (/.f64 (*.f64 r (cos.f64 b)) (sin.f64 b))) (*.f64 -3 (/.f64 (*.f64 (+.f64 (*.f64 54 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) r) (pow.f64 (sin.f64 b) 2))) (*.f64 36 r)) (cos.f64 b)) (sin.f64 b))))) (pow.f64 a 6))) (+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4))))))))
(/.f64 b (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))
(+.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (pow.f64 b 2)) (/.f64 b (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))))
(+.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (pow.f64 b 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (*.f64 1/6 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (pow.f64 b 3)) (/.f64 b (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (*.f64 1/6 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (+.f64 (*.f64 -1/6 (/.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))) (*.f64 -1/2 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))))))) (pow.f64 b 4))) (+.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (pow.f64 b 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (*.f64 1/6 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (pow.f64 b 3)) (/.f64 b (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.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 6 (pow.f64 a 3))
(+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))))
(-.f64 (+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (*.f64 36 (/.f64 1 (pow.f64 a 5))))) (*.f64 -54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5)))))
(-.f64 (+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (+.f64 (*.f64 36 (/.f64 1 (pow.f64 a 5))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -108 (/.f64 (cos.f64 b) (sin.f64 b))) (+.f64 (*.f64 -3 (/.f64 (*.f64 (-.f64 36 (*.f64 -54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)))) (cos.f64 b)) (sin.f64 b))) (*.f64 36 (/.f64 (cos.f64 b) (sin.f64 b))))) (pow.f64 a 6)))))) (*.f64 -54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5)))))
(/.f64 6 (pow.f64 a 3))
(+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))))
(+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (+.f64 (*.f64 36 (/.f64 1 (pow.f64 a 5))) (*.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5)))))))
(+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -108 (/.f64 (cos.f64 b) (sin.f64 b))) (+.f64 (*.f64 -3 (/.f64 (*.f64 (+.f64 36 (*.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)))) (cos.f64 b)) (sin.f64 b))) (*.f64 36 (/.f64 (cos.f64 b) (sin.f64 b))))) (pow.f64 a 6))) (+.f64 (*.f64 36 (/.f64 1 (pow.f64 a 5))) (*.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))))))))
Outputs
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (cos.f64 b))
(-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1)) (*.f64 (sin.f64 b) a))
(+.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))))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))
(*.f64 (*.f64 1/6 (sin.f64 b)) (pow.f64 a 3))
(*.f64 (sin.f64 b) (*.f64 1/6 (pow.f64 a 3)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))))
(fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (*.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a))))
(fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (*.f64 (sin.f64 b) (*.f64 1/6 (pow.f64 a 3))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 -1/2 (cos.f64 b)) (*.f64 (*.f64 (sin.f64 b) 1/6) a)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b)))))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (*.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)))))
(+.f64 (*.f64 (cos.f64 b) (*.f64 a (*.f64 a -1/2))) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(+.f64 (*.f64 (cos.f64 b) (*.f64 a (*.f64 a -1/2))) (*.f64 (sin.f64 b) (fma.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/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))
(*.f64 (*.f64 1/6 (sin.f64 b)) (pow.f64 a 3))
(*.f64 (sin.f64 b) (*.f64 1/6 (pow.f64 a 3)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))))
(fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (*.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a))))
(fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (*.f64 (sin.f64 b) (*.f64 1/6 (pow.f64 a 3))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 -1/2 (cos.f64 b)) (*.f64 (*.f64 (sin.f64 b) 1/6) a)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b)))))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (*.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)))))
(+.f64 (*.f64 (cos.f64 b) (*.f64 a (*.f64 a -1/2))) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(+.f64 (*.f64 (cos.f64 b) (*.f64 a (*.f64 a -1/2))) (*.f64 (sin.f64 b) (fma.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/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))
(+.f64 1 (*.f64 -1/2 (*.f64 a a)))
(fma.f64 -1/2 (*.f64 a a) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(+.f64 1 (fma.f64 -1/2 (*.f64 a a) (*.f64 b (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(+.f64 1 (fma.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (*.f64 a (*.f64 a -1/2))))
(+.f64 (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 b (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (+.f64 (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 -1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (pow.f64 b 2))))))
(+.f64 1 (fma.f64 -1/2 (*.f64 a a) (fma.f64 b (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (*.f64 (*.f64 -1/2 (+.f64 1 (*.f64 -1/2 (*.f64 a a)))) (*.f64 b b)))))
(+.f64 1 (fma.f64 -1/2 (*.f64 a a) (fma.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (*.f64 -1/2 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 b b))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (fma.f64 -1/2 (*.f64 a a) 1)) (*.f64 b (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 a 2)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (+.f64 (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 -1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (pow.f64 b 2)))))))
(+.f64 1 (fma.f64 -1/2 (*.f64 a a) (fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (pow.f64 b 3)) (fma.f64 b (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (*.f64 (*.f64 -1/2 (+.f64 1 (*.f64 -1/2 (*.f64 a a)))) (*.f64 b b))))))
(+.f64 1 (fma.f64 -1/2 (*.f64 a a) (+.f64 (*.f64 -1/2 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 b b))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (+.f64 b (*.f64 -1/6 (pow.f64 b 3)))))))
(+.f64 1 (+.f64 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (+.f64 b (*.f64 -1/6 (pow.f64 b 3)))) (*.f64 -1/2 (+.f64 (*.f64 (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 b b)) (*.f64 a a)))))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 b) a) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 b (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (pow.f64 b 3)) (*.f64 b (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (+.f64 b (*.f64 -1/6 (pow.f64 b 3))))
(*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (+.f64 b (*.f64 -1/6 (pow.f64 b 3))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(fma.f64 1/120 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (pow.f64 b 5)) (fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (pow.f64 b 3)) (*.f64 b (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(fma.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (pow.f64 b 5)) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (+.f64 b (*.f64 -1/6 (pow.f64 b 3)))))
(*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (+.f64 b (+.f64 (*.f64 1/120 (pow.f64 b 5)) (*.f64 -1/6 (pow.f64 b 3)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 b 5) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 b 7) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (*.f64 b (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))))
(fma.f64 1/120 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (pow.f64 b 5)) (fma.f64 -1/5040 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (pow.f64 b 7)) (fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (pow.f64 b 3)) (*.f64 b (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (+.f64 b (*.f64 -1/6 (pow.f64 b 3)))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (+.f64 (*.f64 1/120 (pow.f64 b 5)) (*.f64 -1/5040 (pow.f64 b 7)))))
(*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (+.f64 (+.f64 b (*.f64 -1/6 (pow.f64 b 3))) (+.f64 (*.f64 1/120 (pow.f64 b 5)) (*.f64 -1/5040 (pow.f64 b 7)))))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 -1 (*.f64 (sin.f64 b) a))
(neg.f64 (*.f64 (sin.f64 b) a))
(*.f64 (sin.f64 b) (neg.f64 a))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1 (*.f64 (sin.f64 b) a)))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1 (*.f64 (sin.f64 b) a)))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (*.f64 -1 (*.f64 (sin.f64 b) a)))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))
(*.f64 (*.f64 1/6 (sin.f64 b)) (pow.f64 a 3))
(*.f64 (sin.f64 b) (*.f64 1/6 (pow.f64 a 3)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)))
(*.f64 (*.f64 1/6 (sin.f64 b)) (pow.f64 a 3))
(*.f64 (sin.f64 b) (*.f64 1/6 (pow.f64 a 3)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))
(*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 b r) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))
(/.f64 b (/.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) r))
(*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 r (*.f64 (pow.f64 b 2) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))) (/.f64 (*.f64 r b) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 r (*.f64 b b)) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (/.f64 b (/.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) r)))
(-.f64 (*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b) (/.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (*.f64 (*.f64 b b) r)) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))
(*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) (-.f64 b (/.f64 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (*.f64 b b)) (fma.f64 -1/2 (*.f64 a a) 1))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 r (*.f64 (pow.f64 b 2) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) 2)) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 3))) (*.f64 -1/2 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (pow.f64 b 3)) (/.f64 (*.f64 r b) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 r (*.f64 b b)) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (fma.f64 (-.f64 (*.f64 -1/6 (/.f64 r (+.f64 1 (*.f64 -1/2 (*.f64 a a))))) (fma.f64 -1 (/.f64 r (/.f64 (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 3) (pow.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) 2))) (*.f64 -1/2 (/.f64 r (+.f64 1 (*.f64 -1/2 (*.f64 a a))))))) (pow.f64 b 3) (/.f64 b (/.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) r))))
(-.f64 (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1))) (-.f64 (*.f64 -1/2 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1))) (/.f64 r (/.f64 (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 3) (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) 2))))) (*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b)) (/.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (*.f64 (*.f64 b b) r)) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))
(+.f64 (*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) (-.f64 b (/.f64 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (*.f64 b b)) (fma.f64 -1/2 (*.f64 a a) 1)))) (*.f64 (pow.f64 b 3) (+.f64 (*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) 1/3) (*.f64 (/.f64 r (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 3)) (pow.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) 2)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 r (*.f64 (pow.f64 b 2) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) 2)) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 3))) (*.f64 -1/2 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (pow.f64 b 3)) (+.f64 (/.f64 (*.f64 r b) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (*.f64 -1 (*.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 r (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) 2)) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 3))) (*.f64 -1/2 (/.f64 r (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 r (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))) (*.f64 1/2 (/.f64 (*.f64 r (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))))) (pow.f64 b 4))))))
(fma.f64 -1 (/.f64 (*.f64 (*.f64 r (*.f64 b b)) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (+.f64 (fma.f64 (-.f64 (*.f64 -1/6 (/.f64 r (+.f64 1 (*.f64 -1/2 (*.f64 a a))))) (fma.f64 -1 (/.f64 r (/.f64 (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 3) (pow.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) 2))) (*.f64 -1/2 (/.f64 r (+.f64 1 (*.f64 -1/2 (*.f64 a a))))))) (pow.f64 b 3) (/.f64 b (/.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) r))) (neg.f64 (*.f64 (+.f64 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 r (+.f64 1 (*.f64 -1/2 (*.f64 a a))))) (fma.f64 -1 (/.f64 r (/.f64 (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 3) (pow.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) 2))) (*.f64 -1/2 (/.f64 r (+.f64 1 (*.f64 -1/2 (*.f64 a a))))))) (/.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))) (*.f64 (/.f64 r (/.f64 (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))) 1/3)) (pow.f64 b 4)))))
(-.f64 (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1))) (-.f64 (*.f64 -1/2 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1))) (/.f64 r (/.f64 (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 3) (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) 2))))) (fma.f64 (neg.f64 (fma.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) r) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) 1/3 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1))) (-.f64 (*.f64 -1/2 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1))) (/.f64 r (/.f64 (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 3) (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) 2))))) (/.f64 (fma.f64 -1/2 (*.f64 a a) 1) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))) (pow.f64 b 4) (*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b))) (/.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (*.f64 (*.f64 b b) r)) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))
(-.f64 (+.f64 (*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) (-.f64 b (/.f64 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (*.f64 b b)) (fma.f64 -1/2 (*.f64 a a) 1)))) (*.f64 (pow.f64 b 3) (+.f64 (*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) 1/3) (*.f64 (/.f64 r (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 3)) (pow.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) 2))))) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) r) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) 1/3 (/.f64 (+.f64 (*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) 1/3) (*.f64 (/.f64 r (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 3)) (pow.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) 2))) (/.f64 (fma.f64 -1/2 (*.f64 a a) 1) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) (pow.f64 b 4)))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a))))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(+.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 (sin.f64 b) (/.f64 (cos.f64 b) r)) (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)))
(+.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) r)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (*.f64 (*.f64 a a) (-.f64 (/.f64 -1/2 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) r))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) r)))))
(+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (*.f64 a (*.f64 a (fma.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r)))))))
(+.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) r)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) r)) -1/3))) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) r)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))
(+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (-.f64 (-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (*.f64 a a) (-.f64 (/.f64 -1/2 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) r))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) r)))) (*.f64 (pow.f64 a 3) (fma.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (/.f64 -1/2 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) r))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) r)))))))
(+.f64 (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a (fma.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r)))))) (fma.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r)))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))
(*.f64 6 (/.f64 r (pow.f64 a 3)))
(/.f64 (*.f64 6 r) (pow.f64 a 3))
(/.f64 (*.f64 r 6) (pow.f64 a 3))
(+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4)))))
(fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 18 (/.f64 (cos.f64 b) (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 4)) r))))
(fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 18 (*.f64 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) r)))
(fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) r)) (/.f64 18 (pow.f64 a 4))))
(+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -36 r) (*.f64 -54 (/.f64 (*.f64 r (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))) (pow.f64 a 5)))))
(fma.f64 6 (/.f64 r (pow.f64 a 3)) (fma.f64 18 (/.f64 (cos.f64 b) (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 4)) r)) (neg.f64 (/.f64 (fma.f64 -54 (/.f64 r (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 r -36)) (pow.f64 a 5)))))
(-.f64 (fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 18 (*.f64 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) r))) (/.f64 (fma.f64 r -36 (*.f64 -54 (*.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) r))) (pow.f64 a 5)))
(-.f64 (fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) r)) (/.f64 18 (pow.f64 a 4)))) (/.f64 (fma.f64 r -36 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) -54) (/.f64 (pow.f64 (sin.f64 b) 2) r))) (pow.f64 a 5)))
(+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -108 (/.f64 (*.f64 r (cos.f64 b)) (sin.f64 b))) (+.f64 (*.f64 3 (/.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -54 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) r) (pow.f64 (sin.f64 b) 2))) (*.f64 -36 r))) (sin.f64 b))) (*.f64 36 (/.f64 (*.f64 r (cos.f64 b)) (sin.f64 b))))) (pow.f64 a 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -36 r) (*.f64 -54 (/.f64 (*.f64 r (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))) (pow.f64 a 5))))))
(fma.f64 6 (/.f64 r (pow.f64 a 3)) (fma.f64 18 (/.f64 (cos.f64 b) (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 4)) r)) (fma.f64 -1 (/.f64 (fma.f64 -108 (/.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (fma.f64 3 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) (fma.f64 -54 (/.f64 r (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 r -36)))) (/.f64 (*.f64 36 (*.f64 (cos.f64 b) r)) (sin.f64 b)))) (pow.f64 a 6)) (neg.f64 (/.f64 (fma.f64 -54 (/.f64 r (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 r -36)) (pow.f64 a 5))))))
(fma.f64 6 (/.f64 r (pow.f64 a 3)) (-.f64 (-.f64 (*.f64 18 (*.f64 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) r)) (/.f64 (+.f64 (*.f64 3 (*.f64 (/.f64 (cos.f64 b) (sin.f64 b)) (fma.f64 r -36 (*.f64 -54 (*.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) r))))) (*.f64 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) r)) -72)) (pow.f64 a 6))) (/.f64 (fma.f64 r -36 (*.f64 -54 (*.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) r))) (pow.f64 a 5))))
(-.f64 (-.f64 (fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) r)) (/.f64 18 (pow.f64 a 4)))) (/.f64 (fma.f64 r -36 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) -54) (/.f64 (pow.f64 (sin.f64 b) 2) r))) (pow.f64 a 5))) (/.f64 (+.f64 (*.f64 3 (*.f64 (/.f64 (cos.f64 b) (sin.f64 b)) (fma.f64 r -36 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) -54) (/.f64 (pow.f64 (sin.f64 b) 2) r))))) (*.f64 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) r)) -72)) (pow.f64 a 6)))
(*.f64 6 (/.f64 r (pow.f64 a 3)))
(/.f64 (*.f64 6 r) (pow.f64 a 3))
(/.f64 (*.f64 r 6) (pow.f64 a 3))
(+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4)))))
(fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 18 (/.f64 (cos.f64 b) (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 4)) r))))
(fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 18 (*.f64 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) r)))
(fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) r)) (/.f64 18 (pow.f64 a 4))))
(+.f64 (*.f64 54 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) r) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5)))) (+.f64 (*.f64 36 (/.f64 r (pow.f64 a 5))) (+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4)))))))
(fma.f64 54 (*.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) (/.f64 r (pow.f64 a 5))) (fma.f64 36 (/.f64 r (pow.f64 a 5)) (fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 18 (/.f64 (cos.f64 b) (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 4)) r))))))
(fma.f64 54 (*.f64 (/.f64 r (pow.f64 a 5)) (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) (fma.f64 36 (/.f64 r (pow.f64 a 5)) (fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 18 (*.f64 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) r)))))
(+.f64 (fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) r)) (/.f64 18 (pow.f64 a 4)))) (*.f64 (/.f64 r (pow.f64 a 5)) (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) 36)))
(+.f64 (*.f64 54 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) r) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5)))) (+.f64 (*.f64 36 (/.f64 r (pow.f64 a 5))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -108 (/.f64 (*.f64 r (cos.f64 b)) (sin.f64 b))) (+.f64 (*.f64 36 (/.f64 (*.f64 r (cos.f64 b)) (sin.f64 b))) (*.f64 -3 (/.f64 (*.f64 (+.f64 (*.f64 54 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) r) (pow.f64 (sin.f64 b) 2))) (*.f64 36 r)) (cos.f64 b)) (sin.f64 b))))) (pow.f64 a 6))) (+.f64 (*.f64 6 (/.f64 r (pow.f64 a 3))) (*.f64 18 (/.f64 (*.f64 (cos.f64 b) r) (*.f64 (sin.f64 b) (pow.f64 a 4))))))))
(fma.f64 54 (*.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) (/.f64 r (pow.f64 a 5))) (fma.f64 36 (/.f64 r (pow.f64 a 5)) (fma.f64 -1 (/.f64 (fma.f64 -108 (/.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (fma.f64 36 (/.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 -3 (/.f64 (fma.f64 54 (/.f64 r (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 r 36)) (/.f64 (sin.f64 b) (cos.f64 b)))))) (pow.f64 a 6)) (fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 18 (/.f64 (cos.f64 b) (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 4)) r)))))))
(fma.f64 54 (*.f64 (/.f64 r (pow.f64 a 5)) (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) (fma.f64 36 (/.f64 r (pow.f64 a 5)) (-.f64 (fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 18 (*.f64 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) r))) (/.f64 (+.f64 (*.f64 -3 (*.f64 (/.f64 (fma.f64 r 36 (*.f64 (*.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) r) 54)) (sin.f64 b)) (cos.f64 b))) (*.f64 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) r)) -72)) (pow.f64 a 6)))))
(+.f64 (-.f64 (fma.f64 6 (/.f64 r (pow.f64 a 3)) (*.f64 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) r)) (/.f64 18 (pow.f64 a 4)))) (/.f64 (+.f64 (*.f64 -3 (*.f64 (/.f64 (fma.f64 r 36 (/.f64 (*.f64 (pow.f64 (cos.f64 b) 2) 54) (/.f64 (pow.f64 (sin.f64 b) 2) r))) (sin.f64 b)) (cos.f64 b))) (*.f64 (/.f64 (cos.f64 b) (/.f64 (sin.f64 b) r)) -72)) (pow.f64 a 6))) (*.f64 (/.f64 r (pow.f64 a 5)) (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) 36)))
(/.f64 b (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))
(/.f64 b (+.f64 1 (*.f64 -1/2 (*.f64 a a))))
(/.f64 b (fma.f64 -1/2 (*.f64 a a) 1))
(+.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (pow.f64 b 2)) (/.f64 b (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))))
(fma.f64 (+.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)))) (*.f64 b b) (/.f64 b (+.f64 1 (*.f64 -1/2 (*.f64 a a)))))
(fma.f64 (*.f64 b b) (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (/.f64 (*.f64 -1/6 (pow.f64 a 3)) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2))) (/.f64 b (fma.f64 -1/2 (*.f64 a a) 1)))
(fma.f64 (*.f64 b b) (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))) (/.f64 b (fma.f64 -1/2 (*.f64 a a) 1)))
(+.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (pow.f64 b 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (*.f64 1/6 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (pow.f64 b 3)) (/.f64 b (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))
(fma.f64 (+.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)))) (*.f64 b b) (fma.f64 (-.f64 (/.f64 1/2 (+.f64 1 (*.f64 -1/2 (*.f64 a a)))) (+.f64 (/.f64 (+.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)))) (/.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))) (/.f64 1/6 (+.f64 1 (*.f64 -1/2 (*.f64 a a)))))) (pow.f64 b 3) (/.f64 b (+.f64 1 (*.f64 -1/2 (*.f64 a a))))))
(fma.f64 (*.f64 b b) (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (/.f64 (*.f64 -1/6 (pow.f64 a 3)) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2))) (fma.f64 (pow.f64 b 3) (-.f64 (/.f64 1/2 (fma.f64 -1/2 (*.f64 a a) 1)) (+.f64 (*.f64 (/.f64 (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (/.f64 (*.f64 -1/6 (pow.f64 a 3)) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2))) (fma.f64 -1/2 (*.f64 a a) 1)) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (/.f64 1/6 (fma.f64 -1/2 (*.f64 a a) 1)))) (/.f64 b (fma.f64 -1/2 (*.f64 a a) 1))))
(fma.f64 (*.f64 b b) (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 1 (fma.f64 -1/2 (*.f64 a a) 1)) 1/3) (*.f64 (/.f64 (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))) (fma.f64 -1/2 (*.f64 a a) 1)) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))) (/.f64 b (fma.f64 -1/2 (*.f64 a a) 1))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (*.f64 1/6 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (+.f64 (*.f64 -1/6 (/.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))) (*.f64 -1/2 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2))))))) (pow.f64 b 4))) (+.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (pow.f64 b 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)) (*.f64 1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) 2)))) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))) (*.f64 1/6 (/.f64 1 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))))))) (pow.f64 b 3)) (/.f64 b (+.f64 1 (*.f64 -1/2 (pow.f64 a 2)))))))
(fma.f64 -1 (*.f64 (pow.f64 b 4) (+.f64 (/.f64 (-.f64 (/.f64 1/2 (+.f64 1 (*.f64 -1/2 (*.f64 a a)))) (+.f64 (/.f64 (+.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)))) (/.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))) (/.f64 1/6 (+.f64 1 (*.f64 -1/2 (*.f64 a a)))))) (/.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))) (fma.f64 -1/6 (/.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (*.f64 -1/2 (+.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)))))))) (fma.f64 (+.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)))) (*.f64 b b) (fma.f64 (-.f64 (/.f64 1/2 (+.f64 1 (*.f64 -1/2 (*.f64 a a)))) (+.f64 (/.f64 (+.f64 (/.f64 a (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) 2)))) (/.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))) (/.f64 1/6 (+.f64 1 (*.f64 -1/2 (*.f64 a a)))))) (pow.f64 b 3) (/.f64 b (+.f64 1 (*.f64 -1/2 (*.f64 a a)))))))
(-.f64 (fma.f64 (*.f64 b b) (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (/.f64 (*.f64 -1/6 (pow.f64 a 3)) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2))) (fma.f64 (pow.f64 b 3) (-.f64 (/.f64 1/2 (fma.f64 -1/2 (*.f64 a a) 1)) (+.f64 (*.f64 (/.f64 (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (/.f64 (*.f64 -1/6 (pow.f64 a 3)) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2))) (fma.f64 -1/2 (*.f64 a a) 1)) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (/.f64 1/6 (fma.f64 -1/2 (*.f64 a a) 1)))) (/.f64 b (fma.f64 -1/2 (*.f64 a a) 1)))) (*.f64 (pow.f64 b 4) (+.f64 (/.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (/.f64 (fma.f64 -1/2 (*.f64 a a) 1) (-.f64 (/.f64 1/2 (fma.f64 -1/2 (*.f64 a a) 1)) (+.f64 (*.f64 (/.f64 (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (/.f64 (*.f64 -1/6 (pow.f64 a 3)) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2))) (fma.f64 -1/2 (*.f64 a a) 1)) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (/.f64 1/6 (fma.f64 -1/2 (*.f64 a a) 1)))))) (fma.f64 -1/2 (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (/.f64 (*.f64 -1/6 (pow.f64 a 3)) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2))) (*.f64 -1/6 (/.f64 (-.f64 (*.f64 1/6 (pow.f64 a 3)) a) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))))))
(-.f64 (fma.f64 (*.f64 b b) (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 1 (fma.f64 -1/2 (*.f64 a a) 1)) 1/3) (*.f64 (/.f64 (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))) (fma.f64 -1/2 (*.f64 a a) 1)) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))) (/.f64 b (fma.f64 -1/2 (*.f64 a a) 1)))) (*.f64 (pow.f64 b 4) (+.f64 (/.f64 (-.f64 (*.f64 (/.f64 1 (fma.f64 -1/2 (*.f64 a a) 1)) 1/3) (*.f64 (/.f64 (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))) (fma.f64 -1/2 (*.f64 a a) 1)) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))) (/.f64 (fma.f64 -1/2 (*.f64 a a) 1) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))) (fma.f64 -1/2 (+.f64 (/.f64 a (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)) (*.f64 -1/6 (/.f64 (pow.f64 a 3) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2)))) (/.f64 (*.f64 (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)) -1/6) (pow.f64 (fma.f64 -1/2 (*.f64 a a) 1) 2))))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 a 2))) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 a a))) (cos.f64 b) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a))))
(/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (fma.f64 -1/2 (*.f64 a a) 1) (*.f64 (sin.f64 b) (fma.f64 1/6 (pow.f64 a 3) (neg.f64 a)))))
(/.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a))
(+.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)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) (*.f64 a (*.f64 a (fma.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))))
(+.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)))))
(fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.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 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))))
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) (*.f64 a (*.f64 a (fma.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)))))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))))) (/.f64 (sin.f64 b) (cos.f64 b))))
(+.f64 (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.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 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)))) (/.f64 (sin.f64 b) (cos.f64 b))))
(/.f64 6 (pow.f64 a 3))
(+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))))
(+.f64 (/.f64 6 (pow.f64 a 3)) (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))))
(fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (/.f64 6 (pow.f64 a 3)))
(-.f64 (+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (*.f64 36 (/.f64 1 (pow.f64 a 5))))) (*.f64 -54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5)))))
(+.f64 (/.f64 6 (pow.f64 a 3)) (-.f64 (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (/.f64 36 (pow.f64 a 5))) (*.f64 -54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))))))
(+.f64 (/.f64 6 (pow.f64 a 3)) (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))) (/.f64 36 (pow.f64 a 5)))))
(+.f64 (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (/.f64 6 (pow.f64 a 3))) (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))) (/.f64 36 (pow.f64 a 5))))
(-.f64 (+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (+.f64 (*.f64 36 (/.f64 1 (pow.f64 a 5))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -108 (/.f64 (cos.f64 b) (sin.f64 b))) (+.f64 (*.f64 -3 (/.f64 (*.f64 (-.f64 36 (*.f64 -54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)))) (cos.f64 b)) (sin.f64 b))) (*.f64 36 (/.f64 (cos.f64 b) (sin.f64 b))))) (pow.f64 a 6)))))) (*.f64 -54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5)))))
(+.f64 (/.f64 6 (pow.f64 a 3)) (-.f64 (+.f64 (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (/.f64 36 (pow.f64 a 5))) (neg.f64 (/.f64 (fma.f64 -108 (/.f64 (cos.f64 b) (sin.f64 b)) (fma.f64 -3 (/.f64 (+.f64 36 (*.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 36 (/.f64 (cos.f64 b) (sin.f64 b))))) (pow.f64 a 6)))) (*.f64 -54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))))))
(+.f64 (/.f64 6 (pow.f64 a 3)) (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (-.f64 (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))) (/.f64 36 (pow.f64 a 5))) (/.f64 (fma.f64 -108 (/.f64 (cos.f64 b) (sin.f64 b)) (fma.f64 36 (/.f64 (cos.f64 b) (sin.f64 b)) (*.f64 -3 (/.f64 (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) 36) (/.f64 (sin.f64 b) (cos.f64 b)))))) (pow.f64 a 6)))))
(-.f64 (+.f64 (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (/.f64 6 (pow.f64 a 3))) (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))) (/.f64 36 (pow.f64 a 5)))) (/.f64 (+.f64 (*.f64 -3 (/.f64 (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) 36) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (cos.f64 b) (sin.f64 b)) -72)) (pow.f64 a 6)))
(/.f64 6 (pow.f64 a 3))
(+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))))
(+.f64 (/.f64 6 (pow.f64 a 3)) (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))))
(fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (/.f64 6 (pow.f64 a 3)))
(+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (+.f64 (*.f64 36 (/.f64 1 (pow.f64 a 5))) (*.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5)))))))
(+.f64 (/.f64 6 (pow.f64 a 3)) (-.f64 (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (/.f64 36 (pow.f64 a 5))) (*.f64 -54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))))))
(+.f64 (/.f64 6 (pow.f64 a 3)) (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))) (/.f64 36 (pow.f64 a 5)))))
(+.f64 (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (/.f64 6 (pow.f64 a 3))) (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))) (/.f64 36 (pow.f64 a 5))))
(+.f64 (*.f64 6 (/.f64 1 (pow.f64 a 3))) (+.f64 (*.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -108 (/.f64 (cos.f64 b) (sin.f64 b))) (+.f64 (*.f64 -3 (/.f64 (*.f64 (+.f64 36 (*.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)))) (cos.f64 b)) (sin.f64 b))) (*.f64 36 (/.f64 (cos.f64 b) (sin.f64 b))))) (pow.f64 a 6))) (+.f64 (*.f64 36 (/.f64 1 (pow.f64 a 5))) (*.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))))))))
(+.f64 (/.f64 6 (pow.f64 a 3)) (-.f64 (+.f64 (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (/.f64 36 (pow.f64 a 5))) (neg.f64 (/.f64 (fma.f64 -108 (/.f64 (cos.f64 b) (sin.f64 b)) (fma.f64 -3 (/.f64 (+.f64 36 (*.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)))) (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 36 (/.f64 (cos.f64 b) (sin.f64 b))))) (pow.f64 a 6)))) (*.f64 -54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))))))
(+.f64 (/.f64 6 (pow.f64 a 3)) (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (-.f64 (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))) (/.f64 36 (pow.f64 a 5))) (/.f64 (fma.f64 -108 (/.f64 (cos.f64 b) (sin.f64 b)) (fma.f64 36 (/.f64 (cos.f64 b) (sin.f64 b)) (*.f64 -3 (/.f64 (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) 36) (/.f64 (sin.f64 b) (cos.f64 b)))))) (pow.f64 a 6)))))
(-.f64 (+.f64 (fma.f64 18 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) (pow.f64 a 4))) (/.f64 6 (pow.f64 a 3))) (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 5))) (/.f64 36 (pow.f64 a 5)))) (/.f64 (+.f64 (*.f64 -3 (/.f64 (fma.f64 54 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) 36) (/.f64 (sin.f64 b) (cos.f64 b)))) (*.f64 (/.f64 (cos.f64 b) (sin.f64 b)) -72)) (pow.f64 a 6)))

eval645.0ms (3.5%)

Compiler

Compiled 29591 to 11891 computations (59.8% saved)

prune700.0ms (3.8%)

Pruning

64 alts after pruning (62 fresh and 2 done)

PrunedKeptTotal
New994491043
Fresh321345
Picked101
Done224
Total1029641093
Error
0.0b
Counts
1093 → 64
Alt Table
Click to see full alt table
StatusErrorProgram
48.6b
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
53.1b
(*.f64 r (*.f64 (sin.f64 b) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a))))))
30.0b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))))
27.6b
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) 3/2)))
24.9b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 b) 3))))
30.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
14.6b
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
42.6b
(*.f64 r (*.f64 (+.f64 (*.f64 b a) 1) (sin.f64 b)))
24.8b
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
30.7b
(/.f64 (*.f64 r b) (cos.f64 a))
24.8b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
52.8b
(*.f64 r (log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))
30.6b
(*.f64 r (/.f64 b (cos.f64 a)))
40.6b
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
28.1b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))))
0.6b
(*.f64 r (/.f64 (sin.f64 b) (log.f64 (/.f64 (exp.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))
0.6b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))
28.1b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
24.2b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
26.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
14.8b
(*.f64 r (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (cos.f64 (+.f64 b a))))
0.5b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))) 3))))
31.1b
(/.f64 1 (/.f64 (cos.f64 a) (*.f64 b r)))
27.9b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))
24.8b
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
36.9b
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
27.5b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))
30.7b
(/.f64 r (/.f64 (cos.f64 a) b))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))
53.1b
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 b a))))
53.3b
(*.f64 r (-.f64 (+.f64 1 (/.f64 b (cos.f64 a))) 1))
0.5b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 3))))
14.6b
(/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))
44.9b
(-.f64 (+.f64 1 (*.f64 (/.f64 b (cos.f64 a)) r)) 1)
14.2b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
53.1b
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
28.2b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 a) 3))))
0.3b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
41.4b
(*.f64 r b)
28.6b
(*.f64 r (/.f64 b (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
0.3b
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
0.7b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))
1.0b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
58.4b
(/.f64 (*.f64 r 6) (pow.f64 a 3))
42.3b
(*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b)
26.7b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
31.1b
(+.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))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))
14.2b
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
45.5b
(*.f64 r (*.f64 (/.f64 (sqrt.f64 b) 1) (/.f64 (sqrt.f64 b) (cos.f64 a))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
38.7b
(*.f64 (sin.f64 b) r)
14.2b
(*.f64 r (/.f64 (sin.f64 b) (log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))
35.9b
(*.f64 r (/.f64 (exp.f64 (log.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
15.0b
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
14.2b
(*.f64 r (/.f64 (log1p.f64 (expm1.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
58.4b
(*.f64 r (/.f64 6 (pow.f64 a 3)))
30.5b
(*.f64 r (/.f64 b (cos.f64 (+.f64 b a))))
30.8b
(*.f64 r (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (/.f64 -1/2 (/.f64 (cos.f64 b) (sin.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a)))))
14.1b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))))
24.8b
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
37.0b
(*.f64 r (/.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) (cos.f64 (+.f64 b a))))
14.9b
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
Compiler

Compiled 2442 to 1576 computations (35.5% saved)

localize42.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 65 to 12 computations (81.5% saved)

series63.0ms (0.3%)

Counts
4 → 60
Calls

27 calls:

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

rewrite147.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
794×log-prod_binary64
552×fma-def_binary64
285×fma-neg_binary64
273×expm1-udef_binary64
273×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01375
129239
2421639
Stop Event
node limit
Counts
4 → 267
Calls
Call 1
Inputs
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
Outputs
((#(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 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (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 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (/.f64 (sin.f64 b) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 (-.f64 a b)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (*.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a)))) (cos.f64 (-.f64 a b)))))) (#(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 pow.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (cos.f64 (-.f64 a b)) 2) (/.f64 (cos.f64 (+.f64 b a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b 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 (neg.f64 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b 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 pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1))))))
((#(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 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) 1) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (sqrt.f64 (cos.f64 (+.f64 b a)))) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(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 pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) (pow.f64 r 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 r 3) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (+.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a)))) (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))) (log.f64 (sqrt.f64 (exp.f64 (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 1 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 (-.f64 a b)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (-.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 (-.f64 a b)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cos.f64 (-.f64 a b)) (*.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 (-.f64 a b)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) (cos.f64 (-.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 (-.f64 a b)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a)))) (neg.f64 (cos.f64 (-.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 2) (*.f64 2 (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) (-.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (neg.f64 (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3) (pow.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2) (-.f64 (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cos.f64 (+.f64 b a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2) (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))) (-.f64 (cos.f64 (+.f64 b a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a)) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (exp.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a)) (/.f64 1 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (/.f64 1 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 b a)))) (exp.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))) (exp.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))) (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b))) (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 (sin.f64 a)) (sin.f64 b))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (+.f64 b a))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 b a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 a) (cos.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (cos.f64 a) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 a) (neg.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 b a)) 1 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 b a)) 1 (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 b a)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 b a)) 1 (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 b a)) 1 (+.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 b a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 b a)) (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 b a)) (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 b a)) (+.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (+.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))) (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))) (+.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (neg.f64 (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))) (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))) (+.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 1/2 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 1/2 (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 1/2 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (-.f64 a b))) 1/2 (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 (-.f64 a b)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 (-.f64 a b)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))) (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 (-.f64 a b)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 (-.f64 a b)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))) (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (cos.f64 (-.f64 a b)) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))) (+.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (-.f64 a b))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (-.f64 a b))) (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (-.f64 a b))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (-.f64 a b))) (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 a b)) (cos.f64 (+.f64 b a))) (/.f64 1 (cos.f64 (-.f64 a b))) (+.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))) (cbrt.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))) (cbrt.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))) (cbrt.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))) (cbrt.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))) (sqrt.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))) (sqrt.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (fma.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (+.f64 (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 (sin.f64 a)) 1) (sin.f64 b) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))) (cbrt.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 (sin.f64 a)) (sqrt.f64 (sin.f64 b))) (sqrt.f64 (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))))

simplify80.0ms (0.4%)

Algorithm
egg-herbie
Rules
497×times-frac_binary64
456×associate-/l*_binary64
437×associate-*l/_binary64
359×associate-*r/_binary64
306×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01952083
16522001
223611918
Stop Event
node limit
Counts
327 → 329
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 (-.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 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) 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 (*.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))))
(/.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))))
(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 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))))))
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 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (pow.f64 b 3) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (fma.f64 -1 (*.f64 (pow.f64 b 4) (fma.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (fma.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (neg.f64 (/.f64 (*.f64 (sin.f64 a) (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)))))) (cos.f64 a)))))) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (pow.f64 b 3) (-.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))))))
(-.f64 (+.f64 (/.f64 b (cos.f64 a)) (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b)))) (*.f64 (pow.f64 b 4) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3 (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (neg.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))
(/.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a))
(+.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)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) (*.f64 (*.f64 a a) (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))))
(+.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)))))
(fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.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 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))))
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) (*.f64 (*.f64 a a) (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.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 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (/.f64 (sin.f64 b) (cos.f64 b))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))) (*.f64 (pow.f64 a 3) (fma.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 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 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))
(fma.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (*.f64 a (sin.f64 b)))
(fma.f64 a (sin.f64 b) (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) -1/6)))
(*.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)))
(fma.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)) (*.f64 a (sin.f64 b))))
(fma.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 a (sin.f64 b) (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 5) 1/120))))
(fma.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (*.f64 (sin.f64 b) (+.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))))
(fma.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7)) (fma.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)) (*.f64 a (sin.f64 b)))))
(fma.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7)) (fma.f64 a (sin.f64 b) (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 5) 1/120)))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 a (*.f64 -1/6 (pow.f64 a 3)))) (*.f64 (sin.f64 b) (+.f64 (*.f64 1/120 (pow.f64 a 5)) (*.f64 -1/5040 (pow.f64 a 7)))))
(*.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))
(fma.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 b (sin.f64 a)))
(fma.f64 b (sin.f64 a) (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 3) -1/6)))
(*.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)))))
(fma.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (fma.f64 (sin.f64 a) b (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)))))
(fma.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (fma.f64 (*.f64 (sin.f64 a) 1/120) (pow.f64 b 5) (*.f64 b (sin.f64 a))))
(fma.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 (sin.f64 a) (+.f64 b (*.f64 (pow.f64 b 5) 1/120))))
(+.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))))))
(fma.f64 -1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)) (fma.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (fma.f64 (sin.f64 a) b (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))))))
(fma.f64 -1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)) (fma.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (fma.f64 (*.f64 (sin.f64 a) 1/120) (pow.f64 b 5) (*.f64 b (sin.f64 a)))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 b (*.f64 -1/6 (pow.f64 b 3)))) (*.f64 (sin.f64 a) (+.f64 (*.f64 1/120 (pow.f64 b 5)) (*.f64 -1/5040 (pow.f64 b 7)))))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 b (/.f64 (cos.f64 a) r))
(*.f64 (/.f64 b (cos.f64 a)) r)
(+.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 b (/.f64 (cos.f64 a) r)) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (*.f64 b b) r))))
(+.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r)))
(+.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r))
(+.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 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (*.f64 b b) r))) (+.f64 (/.f64 b (/.f64 (cos.f64 a) r)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) r) (pow.f64 (cos.f64 a) 3))) (*.f64 (/.f64 b (cos.f64 a)) r)))
(+.f64 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r) (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r)) (*.f64 (/.f64 b (cos.f64 a)) r)))
(+.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 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (*.f64 b b) r))) (+.f64 (/.f64 b (/.f64 (cos.f64 a) r)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))) (neg.f64 (*.f64 (pow.f64 b 4) (fma.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))))) (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) r)) -1/3)))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r)) (-.f64 (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) r) (pow.f64 (cos.f64 a) 3))) (*.f64 (/.f64 b (cos.f64 a)) r)) (*.f64 (pow.f64 b 4) (-.f64 (/.f64 (*.f64 (sin.f64 a) -1/3) (/.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) r) (pow.f64 (cos.f64 a) 3))))))))
(-.f64 (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r)) (*.f64 (/.f64 b (cos.f64 a)) r)) (-.f64 (*.f64 (pow.f64 b 4) (-.f64 (*.f64 (/.f64 (*.f64 (sin.f64 a) -1/3) (pow.f64 (cos.f64 a) 2)) r) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r))))) (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r)))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(+.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 (sin.f64 b) (/.f64 (cos.f64 b) r)) (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)))
(+.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (*.f64 (*.f64 a a) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) r)))))
(+.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (*.f64 a (*.f64 a (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r)))))))
(+.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) r)) -1/3))) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) r) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))
(+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (-.f64 (-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (*.f64 a a) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) r)))) (*.f64 (pow.f64 a 3) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) r)) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) r)))))))
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a (fma.f64 (*.f64 (/.f64 r (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r)))))) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r)))))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (cos.f64 b))
(-.f64 (cos.f64 b) (*.f64 a (sin.f64 b)))
(fma.f64 (neg.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)))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b)))
(-.f64 (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b)) (*.f64 a (sin.f64 b)))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.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))))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))) (*.f64 a (sin.f64 b)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 1/6 (pow.f64 a 3)))))
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (neg.f64 (*.f64 b (sin.f64 a))))
(-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))
(+.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) (fma.f64 -1 (*.f64 b (sin.f64 a)) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)))))
(+.f64 (cos.f64 a) (-.f64 (*.f64 (*.f64 b b) (*.f64 (cos.f64 a) -1/2)) (*.f64 b (sin.f64 a))))
(+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))
(+.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) (fma.f64 -1 (*.f64 b (sin.f64 a)) (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b))))))
(+.f64 (cos.f64 a) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 (*.f64 b b) (*.f64 (cos.f64 a) -1/2))) (*.f64 b (sin.f64 a))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))

localize4.0ms (0%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 20 to 7 computations (65% saved)

series8.0ms (0%)

Counts
3 → 32
Calls

15 calls:

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

rewrite66.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
876×pow1_binary64
811×add-log-exp_binary64
811×log1p-expm1-u_binary64
811×expm1-log1p-u_binary64
792×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0720
115015
2214315
Stop Event
node limit
Counts
3 → 88
Calls
Call 1
Inputs
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 (cos.f64 b) r)
(cos.f64 b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 r (tan.f64 b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 r (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 r (tan.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 r (tan.f64 b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 r (tan.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 r (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) (pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 2) (cbrt.f64 (*.f64 r (tan.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 r (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 r (tan.f64 b))) (sqrt.f64 (*.f64 r (tan.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (tan.f64 b) r)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (cos.f64 b)) (/.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 b)) (/.f64 (sin.f64 b) (/.f64 1 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (cos.f64 b)) (/.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 2)) (/.f64 (sin.f64 b) (cbrt.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 2)) (cbrt.f64 (*.f64 r (tan.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 2)) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 (cos.f64 b) r))) (/.f64 (sin.f64 b) (sqrt.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (sqrt.f64 (/.f64 (cos.f64 b) r))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 b))) (neg.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (tan.f64 b) 1) r)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (tan.f64 b) (pow.f64 (cbrt.f64 r) 2)) (cbrt.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (tan.f64 b) (sqrt.f64 r)) (sqrt.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 r (tan.f64 b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 r (tan.f64 b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 r (tan.f64 b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 r (tan.f64 b))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (/.f64 (neg.f64 (cos.f64 b)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 r (tan.f64 b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 r (tan.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 r (tan.f64 b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (/.f64 (cos.f64 b) r) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 r (tan.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 r (tan.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 r (tan.f64 b))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (cos.f64 b) r)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 b) (/.f64 1 r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 b) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (cos.f64 b) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 2) (cbrt.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (/.f64 1 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (cos.f64 b) r)) (sqrt.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (/.f64 1 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cos.f64 b)) (/.f64 1 (neg.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 r) (cos.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) 1) (/.f64 (cbrt.f64 (cos.f64 b)) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 b)) 1) (/.f64 (sqrt.f64 (cos.f64 b)) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 r) 2)) (/.f64 (cos.f64 b) (cbrt.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (pow.f64 (cbrt.f64 r) 2)) (cbrt.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 b)) (pow.f64 (cbrt.f64 r) 2)) (/.f64 (sqrt.f64 (cos.f64 b)) (cbrt.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 r)) (/.f64 (cos.f64 b) (sqrt.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (sqrt.f64 r)) (/.f64 (cbrt.f64 (cos.f64 b)) (sqrt.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 b) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 b) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (cos.f64 b) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 r (cos.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (cos.f64 b) (neg.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 r 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (cos.f64 b) r)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cos.f64 b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 b)) (pow.f64 (cbrt.f64 (cos.f64 b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (cbrt.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 b)))))))

simplify66.0ms (0.4%)

Algorithm
egg-herbie
Rules
646×unsub-neg_binary64
508×associate-+l+_binary64
401×associate-+r+_binary64
337×distribute-rgt-in_binary64
302×distribute-lft-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
071489
1189459
2523430
32068426
46947426
Stop Event
node limit
Counts
120 → 111
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 (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 (*.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 1 r)
(+.f64 (/.f64 1 r) (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)))
(+.f64 (/.f64 1 r) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)) (*.f64 1/24 (/.f64 (pow.f64 b 4) r))))
(+.f64 (/.f64 1 r) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 b 6) r)) (*.f64 1/24 (/.f64 (pow.f64 b 4) r)))))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 b 2)))
(+.f64 (*.f64 1/24 (pow.f64 b 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 b 2))))
(+.f64 (*.f64 1/24 (pow.f64 b 4)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 b 2)) (*.f64 -1/720 (pow.f64 b 6)))))
Outputs
(*.f64 r b)
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (*.f64 r b))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (*.f64 r b))
(*.f64 r (+.f64 b (*.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))))))))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (fma.f64 r b (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (fma.f64 1/24 r (*.f64 -1/2 (*.f64 r 1/3)))))))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (fma.f64 (pow.f64 b 5) (-.f64 (*.f64 r -1/30) (*.f64 r -1/6)) (*.f64 r b)))
(fma.f64 (pow.f64 b 5) (*.f64 r 2/15) (*.f64 r (+.f64 b (*.f64 (pow.f64 b 3) 1/3))))
(+.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)))))))))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (fma.f64 (-.f64 (*.f64 r -1/5040) (fma.f64 -1/2 (-.f64 (*.f64 r 1/120) (fma.f64 1/24 r (*.f64 -1/2 (*.f64 r 1/3)))) (fma.f64 -1/720 r (*.f64 (*.f64 r 1/3) 1/24)))) (pow.f64 b 7) (fma.f64 r b (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (fma.f64 1/24 r (*.f64 -1/2 (*.f64 r 1/3))))))))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (fma.f64 (-.f64 (*.f64 r -1/5040) (fma.f64 -1/2 (-.f64 (*.f64 r -1/30) (*.f64 r -1/6)) (fma.f64 r -1/720 (*.f64 r 1/72)))) (pow.f64 b 7) (fma.f64 (pow.f64 b 5) (-.f64 (*.f64 r -1/30) (*.f64 r -1/6)) (*.f64 r b))))
(fma.f64 (-.f64 (*.f64 r -1/5040) (fma.f64 -1/2 (*.f64 r 2/15) (*.f64 r 1/80))) (pow.f64 b 7) (fma.f64 (pow.f64 b 5) (*.f64 r 2/15) (*.f64 r (+.f64 b (*.f64 (pow.f64 b 3) 1/3)))))
(fma.f64 (+.f64 (*.f64 -1/2 (*.f64 r -2/15)) (*.f64 r -4/315)) (pow.f64 b 7) (fma.f64 (pow.f64 b 5) (*.f64 r 2/15) (*.f64 r (+.f64 b (*.f64 (pow.f64 b 3) 1/3)))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 1 r)
(+.f64 (/.f64 1 r) (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)))
(+.f64 (/.f64 1 r) (*.f64 -1/2 (/.f64 (*.f64 b b) r)))
(fma.f64 -1/2 (/.f64 b (/.f64 r b)) (/.f64 1 r))
(fma.f64 -1/2 (*.f64 (/.f64 b r) b) (/.f64 1 r))
(fma.f64 -1/2 (*.f64 b (/.f64 b r)) (/.f64 1 r))
(+.f64 (/.f64 1 r) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)) (*.f64 1/24 (/.f64 (pow.f64 b 4) r))))
(+.f64 (/.f64 1 r) (fma.f64 -1/2 (/.f64 (*.f64 b b) r) (*.f64 1/24 (/.f64 (pow.f64 b 4) r))))
(+.f64 (/.f64 1 r) (fma.f64 1/24 (/.f64 (pow.f64 b 4) r) (/.f64 (*.f64 b b) (/.f64 r -1/2))))
(fma.f64 -1/2 (*.f64 (/.f64 b r) b) (fma.f64 1/24 (/.f64 (pow.f64 b 4) r) (/.f64 1 r)))
(fma.f64 -1/2 (*.f64 b (/.f64 b r)) (fma.f64 1/24 (/.f64 (pow.f64 b 4) r) (/.f64 1 r)))
(+.f64 (/.f64 1 r) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 b 6) r)) (*.f64 1/24 (/.f64 (pow.f64 b 4) r)))))
(+.f64 (/.f64 1 r) (fma.f64 -1/2 (/.f64 (*.f64 b b) r) (fma.f64 -1/720 (/.f64 (pow.f64 b 6) r) (*.f64 1/24 (/.f64 (pow.f64 b 4) r)))))
(+.f64 (fma.f64 -1/2 (/.f64 b (/.f64 r b)) (/.f64 1 r)) (fma.f64 -1/720 (/.f64 (pow.f64 b 6) r) (*.f64 1/24 (/.f64 (pow.f64 b 4) r))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 b r) b) (/.f64 1 r)) (fma.f64 -1/720 (/.f64 (pow.f64 b 6) r) (*.f64 (/.f64 1/24 r) (pow.f64 b 4))))
(+.f64 (fma.f64 -1/2 (*.f64 b (/.f64 b r)) (/.f64 1 r)) (fma.f64 -1/720 (/.f64 (pow.f64 b 6) r) (*.f64 (pow.f64 b 4) (/.f64 1/24 r))))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 b 2)))
(+.f64 1 (*.f64 -1/2 (*.f64 b b)))
(fma.f64 -1/2 (*.f64 b b) 1)
(+.f64 (*.f64 1/24 (pow.f64 b 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 b 2))))
(fma.f64 1/24 (pow.f64 b 4) (+.f64 1 (*.f64 -1/2 (*.f64 b b))))
(fma.f64 1/24 (pow.f64 b 4) (fma.f64 -1/2 (*.f64 b b) 1))
(fma.f64 -1/2 (*.f64 b b) (fma.f64 1/24 (pow.f64 b 4) 1))
(+.f64 (*.f64 1/24 (pow.f64 b 4)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 b 2)) (*.f64 -1/720 (pow.f64 b 6)))))
(fma.f64 1/24 (pow.f64 b 4) (+.f64 1 (fma.f64 -1/2 (*.f64 b b) (*.f64 -1/720 (pow.f64 b 6)))))
(+.f64 (fma.f64 1/24 (pow.f64 b 4) (fma.f64 -1/2 (*.f64 b b) 1)) (*.f64 -1/720 (pow.f64 b 6)))
(fma.f64 1/24 (pow.f64 b 4) (fma.f64 b (*.f64 b -1/2) (fma.f64 -1/720 (pow.f64 b 6) 1)))
(fma.f64 1/24 (pow.f64 b 4) (fma.f64 -1/2 (*.f64 b b) (fma.f64 -1/720 (pow.f64 b 6) 1)))

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))
2.1b
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
2.7b
(cos.f64 (+.f64 b a))
7.9b
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
Compiler

Compiled 52 to 10 computations (80.8% saved)

series228.0ms (1.2%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
53.0ms
a
@inf
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
42.0ms
r
@inf
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
41.0ms
b
@inf
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
27.0ms
b
@-inf
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
27.0ms
a
@-inf
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))

rewrite80.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
594×prod-diff_binary64
576×log-prod_binary64
308×pow2_binary64
225×fma-def_binary64
215×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01130
122530
2308830
Stop Event
node limit
Counts
2 → 132
Calls
Call 1
Inputs
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 r) (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sin.f64 b)) (log.f64 (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (log.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (log.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (log.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (*.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) (log.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) (*.f64 2 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (log.f64 (*.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 r)) (log.f64 (*.f64 (sqrt.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (log.f64 (cbrt.f64 r))) (log.f64 (*.f64 (cbrt.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 1) (*.f64 (log.f64 r) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a))))) (log.f64 (/.f64 r (sqrt.f64 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (/.f64 (sin.f64 b) 1)) (log.f64 (/.f64 r (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2))) (log.f64 (/.f64 r (cbrt.f64 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (cbrt.f64 (*.f64 r r)))) (log.f64 (cbrt.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (sqrt.f64 r))) (log.f64 (sqrt.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2))) (log.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 r (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 r) (log.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (sin.f64 b)) (log.f64 (/.f64 (cos.f64 (+.f64 b a)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (log.f64 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (*.f64 (sin.f64 b) r)) (log.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (neg.f64 (*.f64 (sin.f64 b) r))) (log.f64 (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (/.f64 (*.f64 (sin.f64 b) r) 1)) (log.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (/.f64 (*.f64 (sin.f64 b) r) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2))) (log.f64 (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (/.f64 (*.f64 (sin.f64 b) r) (sqrt.f64 (cos.f64 (+.f64 b a))))) (log.f64 (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (*.f64 (neg.f64 (sin.f64 b)) r)) (log.f64 (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (*.f64 r (neg.f64 (sin.f64 b)))) (log.f64 (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2) (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (log.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (log.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3) (pow.f64 (log.f64 r) 3)) (+.f64 (pow.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2) (-.f64 (pow.f64 (log.f64 r) 2) (*.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (log.f64 r)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2) (pow.f64 (log.f64 r) 2)) (log.f64 (/.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (log.f64 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (fma.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (log.f64 r) (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (log.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 1 (*.f64 (log.f64 r) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 2) (cbrt.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (log.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 r)) 2) (cbrt.f64 (log.f64 r)) (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (log.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 r)) (sqrt.f64 (log.f64 r)) (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))
((#(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 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (*.f64 (/.f64 1 (cos.f64 (+.f64 b a))) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 r (/.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))) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2) (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 r r)) (*.f64 (cbrt.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2) (*.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 r) (*.f64 (sqrt.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (*.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 b) r) (/.f64 1 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (/.f64 r (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 r (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (cbrt.f64 (*.f64 r r))) (cbrt.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) (sqrt.f64 r)) (sqrt.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 r (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (log.f64 r)) (pow.f64 (exp.f64 1) (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (pow.f64 (exp.f64 1) (log.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (*.f64 2 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))) (pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) (pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (*.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 1)) (pow.f64 (exp.f64 1) (*.f64 (log.f64 r) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) 1) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (sqrt.f64 (cos.f64 (+.f64 b a)))) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(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 pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) (pow.f64 r 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 r 3) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) 1) (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) 1) (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) (cbrt.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) (sqrt.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))) (sqrt.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) (sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2))) (sqrt.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2)) 1) (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2)) (cbrt.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))) (cbrt.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2))) (cbrt.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))) 2)) (cbrt.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 2)) (sqrt.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))) (sqrt.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) (pow.f64 r 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 r 3) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))))

simplify228.0ms (1.2%)

Algorithm
egg-herbie
Rules
726×fma-def_binary64
556×times-frac_binary64
525×associate-/l*_binary64
514×associate-*l/_binary64
453×associate-*r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01822209
15682116
220812031
Stop Event
node limit
Counts
204 → 174
Calls
Call 1
Inputs
(+.f64 (log.f64 b) (log.f64 (/.f64 r (cos.f64 a))))
(+.f64 (log.f64 b) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) b) (cos.f64 a))))
(+.f64 (log.f64 b) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2))) (*.f64 2 (/.f64 (*.f64 (cos.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)))))) r))) (pow.f64 b 2))) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) b) (cos.f64 a)))))
(+.f64 (log.f64 b) (+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 2 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 3))) (+.f64 (*.f64 -6 (/.f64 (*.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))))) (cos.f64 a)) r)) (*.f64 -6 (/.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)))))) r)))) (pow.f64 b 3))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2))) (*.f64 2 (/.f64 (*.f64 (cos.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)))))) r))) (pow.f64 b 2))) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) b) (cos.f64 a))))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (*.f64 (sin.f64 b) a) (cos.f64 b)))
(+.f64 (log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) a) (cos.f64 b)) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 -2 (/.f64 (*.f64 (+.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 (sin.f64 b) r)))) (pow.f64 a 2)))))
(+.f64 (log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) a) (cos.f64 b)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 2 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))) (+.f64 (*.f64 6 (/.f64 (+.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)))) r)) (*.f64 -6 (/.f64 (*.f64 (+.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))))) (cos.f64 b)) (*.f64 (sin.f64 b) r))))))) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 -2 (/.f64 (*.f64 (+.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 (sin.f64 b) r)))) (pow.f64 a 2))))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (log.f64 r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (log.f64 r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (log.f64 r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (log.f64 r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (*.f64 -1 (log.f64 (/.f64 1 r))))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (*.f64 -1 (log.f64 (/.f64 1 r))))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (*.f64 -1 (log.f64 (/.f64 1 r))))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (*.f64 -1 (log.f64 (/.f64 1 r))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 r))) (log.f64 (*.f64 -1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 r))) (log.f64 (*.f64 -1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 r))) (log.f64 (*.f64 -1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 r))) (log.f64 (*.f64 -1 (/.f64 (sin.f64 b) (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 (*.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)))
Outputs
(+.f64 (log.f64 b) (log.f64 (/.f64 r (cos.f64 a))))
(+.f64 (log.f64 b) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) b) (cos.f64 a))))
(+.f64 (log.f64 b) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (/.f64 (sin.f64 a) (/.f64 (cos.f64 a) b))))
(+.f64 (log.f64 b) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) b)))
(+.f64 (log.f64 b) (fma.f64 (/.f64 (sin.f64 a) (cos.f64 a)) b (log.f64 (/.f64 r (cos.f64 a)))))
(+.f64 (log.f64 b) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2))) (*.f64 2 (/.f64 (*.f64 (cos.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)))))) r))) (pow.f64 b 2))) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) b) (cos.f64 a)))))
(+.f64 (log.f64 b) (fma.f64 1/2 (*.f64 (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (*.f64 2 (/.f64 (cos.f64 a) (/.f64 r (-.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/6) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))))))) (*.f64 b b)) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (/.f64 (sin.f64 a) (/.f64 (cos.f64 a) b)))))
(+.f64 (log.f64 b) (fma.f64 1/2 (*.f64 (fma.f64 2 (*.f64 (/.f64 (cos.f64 a) r) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (*.f64 r (pow.f64 (sin.f64 a) 2))) (pow.f64 (cos.f64 a) 3)))) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 2))) (*.f64 b b)) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) b))))
(+.f64 (fma.f64 (/.f64 (sin.f64 a) (cos.f64 a)) b (log.f64 (/.f64 r (cos.f64 a)))) (fma.f64 (fma.f64 2 (*.f64 (/.f64 (cos.f64 a) r) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2)))) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 2))) (*.f64 (*.f64 b b) 1/2) (log.f64 b)))
(+.f64 (log.f64 b) (+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 2 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 3))) (+.f64 (*.f64 -6 (/.f64 (*.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))))) (cos.f64 a)) r)) (*.f64 -6 (/.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)))))) r)))) (pow.f64 b 3))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2))) (*.f64 2 (/.f64 (*.f64 (cos.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)))))) r))) (pow.f64 b 2))) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (/.f64 (*.f64 (sin.f64 a) b) (cos.f64 a))))))
(+.f64 (log.f64 b) (fma.f64 1/6 (*.f64 (fma.f64 2 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 3)) (*.f64 -6 (+.f64 (/.f64 (fma.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/6) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))))) (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) r)) -1/3)) (/.f64 r (cos.f64 a))) (/.f64 (sin.f64 a) (/.f64 r (-.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/6) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))))))))) (pow.f64 b 3)) (fma.f64 1/2 (*.f64 (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (*.f64 2 (/.f64 (cos.f64 a) (/.f64 r (-.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/6) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))))))) (*.f64 b b)) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (/.f64 (sin.f64 a) (/.f64 (cos.f64 a) b))))))
(+.f64 (log.f64 b) (fma.f64 1/6 (*.f64 (fma.f64 -6 (+.f64 (/.f64 (-.f64 (/.f64 (*.f64 (sin.f64 a) -1/3) (/.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (*.f64 r (pow.f64 (sin.f64 a) 2))) (pow.f64 (cos.f64 a) 3))))) (/.f64 r (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) r) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (*.f64 r (pow.f64 (sin.f64 a) 2))) (pow.f64 (cos.f64 a) 3))))) (*.f64 2 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 3)))) (pow.f64 b 3)) (fma.f64 1/2 (*.f64 (fma.f64 2 (*.f64 (/.f64 (cos.f64 a) r) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (*.f64 r (pow.f64 (sin.f64 a) 2))) (pow.f64 (cos.f64 a) 3)))) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 2))) (*.f64 b b)) (+.f64 (log.f64 (/.f64 r (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) b)))))
(+.f64 (fma.f64 1/2 (*.f64 (fma.f64 2 (*.f64 (/.f64 (cos.f64 a) r) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2)))) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 2))) (*.f64 b b)) (fma.f64 (/.f64 (sin.f64 a) (cos.f64 a)) b (log.f64 (/.f64 r (cos.f64 a))))) (fma.f64 (fma.f64 -6 (fma.f64 (/.f64 (sin.f64 a) r) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2))) (*.f64 (/.f64 (cos.f64 a) r) (-.f64 (*.f64 (/.f64 (*.f64 (sin.f64 a) -1/3) (pow.f64 (cos.f64 a) 2)) r) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2))))))) (*.f64 2 (pow.f64 (/.f64 (sin.f64 a) (cos.f64 a)) 3))) (*.f64 (pow.f64 b 3) 1/6) (log.f64 b)))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))
(log.f64 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b))))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))
(+.f64 (log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (/.f64 (*.f64 (sin.f64 b) a) (cos.f64 b)))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))) (/.f64 (*.f64 a (sin.f64 b)) (cos.f64 b)))
(+.f64 (log.f64 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))) (/.f64 a (/.f64 (cos.f64 b) (sin.f64 b))))
(fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) a (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
(+.f64 (log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) a) (cos.f64 b)) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 -2 (/.f64 (*.f64 (+.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 (sin.f64 b) r)))) (pow.f64 a 2)))))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))) (+.f64 (/.f64 (*.f64 a (sin.f64 b)) (cos.f64 b)) (*.f64 1/2 (*.f64 (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 -2 (*.f64 (/.f64 (fma.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))) (sin.f64 b)) (/.f64 (cos.f64 b) r)))) (*.f64 a a)))))
(+.f64 (log.f64 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))) (fma.f64 1/2 (*.f64 (fma.f64 -2 (*.f64 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))) (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))) r) (/.f64 (cos.f64 b) (sin.f64 b))) (/.f64 (neg.f64 (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))) (*.f64 a a)) (/.f64 a (/.f64 (cos.f64 b) (sin.f64 b)))))
(fma.f64 1/2 (*.f64 (fma.f64 -2 (*.f64 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))) r) (/.f64 (cos.f64 b) (sin.f64 b))) (/.f64 (neg.f64 (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))) (*.f64 a a)) (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) a (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))))
(+.f64 (log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) a) (cos.f64 b)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 2 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))) (+.f64 (*.f64 6 (/.f64 (+.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)))) r)) (*.f64 -6 (/.f64 (*.f64 (+.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))))) (cos.f64 b)) (*.f64 (sin.f64 b) r))))))) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))) (*.f64 -2 (/.f64 (*.f64 (+.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 (sin.f64 b) r)))) (pow.f64 a 2))))))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))) (+.f64 (/.f64 (*.f64 a (sin.f64 b)) (cos.f64 b)) (fma.f64 1/6 (*.f64 (pow.f64 a 3) (fma.f64 2 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (fma.f64 6 (/.f64 (fma.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))) r) (*.f64 -6 (/.f64 (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) r)) -1/3)) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))))) (*.f64 1/2 (*.f64 (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 -2 (*.f64 (/.f64 (fma.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))) (sin.f64 b)) (/.f64 (cos.f64 b) r)))) (*.f64 a a))))))
(+.f64 (log.f64 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))) (+.f64 (fma.f64 1/2 (*.f64 (fma.f64 -2 (*.f64 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))) (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))) r) (/.f64 (cos.f64 b) (sin.f64 b))) (/.f64 (neg.f64 (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2))) (*.f64 a a)) (/.f64 a (/.f64 (cos.f64 b) (sin.f64 b)))) (*.f64 (fma.f64 2 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (fma.f64 -6 (*.f64 (/.f64 (fma.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) r) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 -1/2 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))) (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))))) r) (/.f64 (cos.f64 b) (sin.f64 b))) (*.f64 6 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))) (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))) r)))) (*.f64 1/6 (pow.f64 a 3)))))
(+.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (fma.f64 1/6 (*.f64 (pow.f64 a 3) (fma.f64 (/.f64 -6 (sin.f64 b)) (*.f64 (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))) (/.f64 (*.f64 (*.f64 r (pow.f64 (sin.f64 b) 2)) -1/3) (pow.f64 (cos.f64 b) 2))) (/.f64 (cos.f64 b) r)) (fma.f64 6 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))) r) (*.f64 2 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3))))) (*.f64 a (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (+.f64 (/.f64 -1/2 (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) (/.f64 -1 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 r (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))))))) a)))))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(log.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (log.f64 r))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (log.f64 r))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (log.f64 r))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (log.f64 r))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (*.f64 -1 (log.f64 (/.f64 1 r))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (*.f64 -1 (log.f64 (/.f64 1 r))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (*.f64 -1 (log.f64 (/.f64 1 r))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(+.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))) (*.f64 -1 (log.f64 (/.f64 1 r))))
(log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 r))) (log.f64 (*.f64 -1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))))
(fma.f64 -1 (log.f64 (/.f64 -1 r)) (log.f64 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(-.f64 (log.f64 (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 b a)))) (log.f64 (/.f64 -1 r)))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 r))) (log.f64 (*.f64 -1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))))
(fma.f64 -1 (log.f64 (/.f64 -1 r)) (log.f64 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(-.f64 (log.f64 (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 b a)))) (log.f64 (/.f64 -1 r)))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 r))) (log.f64 (*.f64 -1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))))
(fma.f64 -1 (log.f64 (/.f64 -1 r)) (log.f64 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(-.f64 (log.f64 (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 b a)))) (log.f64 (/.f64 -1 r)))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 r))) (log.f64 (*.f64 -1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))))
(fma.f64 -1 (log.f64 (/.f64 -1 r)) (log.f64 (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(-.f64 (log.f64 (/.f64 (neg.f64 (sin.f64 b)) (cos.f64 (+.f64 b a)))) (log.f64 (/.f64 -1 r)))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 r (/.f64 (cos.f64 a) b))
(*.f64 (/.f64 r (cos.f64 a)) b)
(*.f64 (/.f64 b (cos.f64 a)) r)
(+.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 r (/.f64 (cos.f64 a) b)) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (*.f64 b b))) (pow.f64 (cos.f64 a) 2)))
(+.f64 (*.f64 (/.f64 r (cos.f64 a)) b) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (*.f64 b b))))
(fma.f64 (/.f64 r (cos.f64 a)) b (*.f64 (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)))
(+.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 (*.f64 b b))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 r (/.f64 (cos.f64 a) b)) (*.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/6) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))) (pow.f64 b 3))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (*.f64 b b))) (fma.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (*.f64 r (pow.f64 (sin.f64 a) 2))) (pow.f64 (cos.f64 a) 3))) (pow.f64 b 3) (*.f64 (/.f64 r (cos.f64 a)) b)))
(fma.f64 (/.f64 r (cos.f64 a)) b (fma.f64 (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2))) (pow.f64 b 3) (*.f64 (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) 2)) (*.f64 b b))))
(+.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 (*.f64 b b))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 r (/.f64 (cos.f64 a) b)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/6) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))) (neg.f64 (*.f64 (fma.f64 -1 (/.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) -1/6) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))))) (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) r)) -1/3)) (pow.f64 b 4))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (*.f64 b b))) (-.f64 (fma.f64 (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (*.f64 r (pow.f64 (sin.f64 a) 2))) (pow.f64 (cos.f64 a) 3))) (pow.f64 b 3) (*.f64 (/.f64 r (cos.f64 a)) b)) (*.f64 (-.f64 (/.f64 (*.f64 (sin.f64 a) -1/3) (/.f64 (pow.f64 (cos.f64 a) 2) r)) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (*.f64 r (pow.f64 (sin.f64 a) 2))) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 4))))
(-.f64 (fma.f64 (/.f64 r (cos.f64 a)) b (fma.f64 (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2))) (pow.f64 b 3) (*.f64 (/.f64 (*.f64 r (sin.f64 a)) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)))) (*.f64 (-.f64 (*.f64 (/.f64 (*.f64 (sin.f64 a) -1/3) (pow.f64 (cos.f64 a) 2)) r) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2))))) (pow.f64 b 4)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b))))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(+.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 (sin.f64 b) (/.f64 (cos.f64 b) r)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 r a)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 r a)))
(fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 r a) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))
(+.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 r a)) (pow.f64 (cos.f64 b) 2)) (fma.f64 -1 (*.f64 (fma.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))) (*.f64 a a)) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))
(+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 r a)) (fma.f64 (*.f64 (neg.f64 a) a) (-.f64 (*.f64 -1/2 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))) (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))) (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))))
(fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (fma.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))) (*.f64 a (neg.f64 a)) (*.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) a)))
(+.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 r a)) (pow.f64 (cos.f64 b) 2)) (fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) r)) -1/3))) (fma.f64 -1 (*.f64 (fma.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))) (*.f64 a a)) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))
(+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 r a)) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) r) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 -1/2 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))) (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))))) (fma.f64 (*.f64 (neg.f64 a) a) (-.f64 (*.f64 -1/2 (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))) (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))) (/.f64 r (/.f64 (cos.f64 b) (sin.f64 b))))))
(fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 r a) (-.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (*.f64 a a) (+.f64 (*.f64 a (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))) (/.f64 (*.f64 (*.f64 r (pow.f64 (sin.f64 b) 2)) -1/3) (pow.f64 (cos.f64 b) 2)))) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r)))))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a))))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6))))
0.5b
(cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))
0.9b
(pow.f64 (cos.f64 (+.f64 b a)) 6)
2.7b
(cos.f64 (+.f64 b a))
Compiler

Compiled 61 to 27 computations (55.7% saved)

series12.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
2.0ms
a
@inf
(pow.f64 (cos.f64 (+.f64 b a)) 6)
2.0ms
b
@0
(pow.f64 (cos.f64 (+.f64 b a)) 6)
2.0ms
a
@0
(pow.f64 (cos.f64 (+.f64 b a)) 6)
1.0ms
a
@-inf
(pow.f64 (cos.f64 (+.f64 b a)) 6)
1.0ms
b
@-inf
(pow.f64 (cos.f64 (+.f64 b a)) 6)

rewrite103.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
589×prod-diff_binary64
513×log-prod_binary64
293×pow2_binary64
221×fma-def_binary64
202×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01136
124226
2323026
Stop Event
node limit
Counts
3 → 136
Calls
Call 1
Inputs
(pow.f64 (cos.f64 (+.f64 b a)) 6)
(cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))
(/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (cos.f64 (+.f64 b a)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cos.f64 (+.f64 b a)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2) (pow.f64 (cos.f64 (+.f64 b a)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2) (*.f64 (cos.f64 (+.f64 b a)) (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) 4) (pow.f64 (cos.f64 (+.f64 b a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3/2) (*.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3/2) (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3/2) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 12) (pow.f64 (cos.f64 (+.f64 b a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3) (pow.f64 (cos.f64 (+.f64 b a)) 2)) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 12))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 18))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 6 (log.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 (+.f64 b a)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (sqrt.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 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (+.f64 b a)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (+.f64 b a)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (/.f64 (*.f64 b b) (-.f64 b a))) (cos.f64 (/.f64 (*.f64 a a) (-.f64 b a)))) (*.f64 (sin.f64 (/.f64 (*.f64 b b) (-.f64 b a))) (sin.f64 (/.f64 (*.f64 a a) (-.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))) (log.f64 (sqrt.f64 (exp.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 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2) (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 2) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2)) (cos.f64 (-.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 9) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 12) 1/12)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 18) 1/18)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.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 expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 b a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 (+.f64 b a)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 b a)) 1 (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) (cbrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (cos.f64 (+.f64 b a))) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/3) (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 a)) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))
((#(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 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (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 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) -2) (/.f64 (sin.f64 b) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 b a)) -1/2) (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (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 pow.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 1))))))

simplify83.0ms (0.5%)

Algorithm
egg-herbie
Rules
930×distribute-rgt-in_binary64
919×distribute-lft-in_binary64
256×fma-def_binary64
250×associate-*r*_binary64
232×distribute-rgt-out_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02011888
17031757
229231666
Stop Event
node limit
Counts
208 → 187
Calls
Call 1
Inputs
(pow.f64 (cos.f64 a) 6)
(+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (*.f64 (pow.f64 (cos.f64 a) 3) b))) (pow.f64 (cos.f64 a) 6))
(+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (*.f64 (pow.f64 (cos.f64 a) 3) b))) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))) (cos.f64 a)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 a) 2) (cos.f64 a))) (*.f64 -1/2 (pow.f64 (cos.f64 a) 3)))) (pow.f64 (cos.f64 a) 3))) (pow.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) 2)) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 6)))
(+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (*.f64 (pow.f64 (cos.f64 a) 3) b))) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))))) (+.f64 (*.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) (cos.f64 a)) (*.f64 1/3 (*.f64 (sin.f64 a) (cos.f64 a))))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))))) (pow.f64 (cos.f64 a) 3))) (*.f64 2 (*.f64 (+.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))) (cos.f64 a)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 a) 2) (cos.f64 a))) (*.f64 -1/2 (pow.f64 (cos.f64 a) 3)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))))))) (pow.f64 b 3)) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))) (cos.f64 a)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 a) 2) (cos.f64 a))) (*.f64 -1/2 (pow.f64 (cos.f64 a) 3)))) (pow.f64 (cos.f64 a) 3))) (pow.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) 2)) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 6))))
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 6)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 6)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 6)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 6)
(pow.f64 (cos.f64 b) 6)
(+.f64 (pow.f64 (cos.f64 b) 6) (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (*.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) (pow.f64 (cos.f64 b) 3))) a))
(+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 b) 2) (cos.f64 b))) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (pow.f64 (cos.f64 b) 3))) (pow.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) 2)) (pow.f64 a 2)) (+.f64 (pow.f64 (cos.f64 b) 6) (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (*.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) (pow.f64 (cos.f64 b) 3))) a)))
(+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 b) 2) (cos.f64 b))) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (pow.f64 (cos.f64 b) 3))) (pow.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) 2)) (pow.f64 a 2)) (+.f64 (pow.f64 (cos.f64 b) 6) (+.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 b) 2) (cos.f64 b))) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))))) (*.f64 2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))) (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 (sin.f64 b) (cos.f64 b)) (*.f64 1/3 (*.f64 (sin.f64 b) (cos.f64 b))))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (pow.f64 (cos.f64 b) 3))))) (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (*.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) (pow.f64 (cos.f64 b) 3))) a))))
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 6)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 6)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 6)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 6)
(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))))
Outputs
(pow.f64 (cos.f64 a) 6)
(+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (*.f64 (pow.f64 (cos.f64 a) 3) b))) (pow.f64 (cos.f64 a) 6))
(fma.f64 2 (*.f64 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -3) (*.f64 (pow.f64 (cos.f64 a) 3) b)) (pow.f64 (cos.f64 a) 6))
(fma.f64 2 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 -3 (*.f64 (pow.f64 (cos.f64 a) 3) b))) (pow.f64 (cos.f64 a) 6))
(fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) -3)) (*.f64 (pow.f64 (cos.f64 a) 3) b)) (pow.f64 (cos.f64 a) 6))
(+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (*.f64 (pow.f64 (cos.f64 a) 3) b))) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))) (cos.f64 a)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 a) 2) (cos.f64 a))) (*.f64 -1/2 (pow.f64 (cos.f64 a) 3)))) (pow.f64 (cos.f64 a) 3))) (pow.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) 2)) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 6)))
(fma.f64 2 (*.f64 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -3) (*.f64 (pow.f64 (cos.f64 a) 3) b)) (fma.f64 (fma.f64 2 (*.f64 (pow.f64 (cos.f64 a) 3) (fma.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2))) (cos.f64 a) (fma.f64 2 (*.f64 (cos.f64 a) (pow.f64 (sin.f64 a) 2)) (*.f64 (pow.f64 (cos.f64 a) 3) -1/2)))) (pow.f64 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -3) 2)) (*.f64 b b) (pow.f64 (cos.f64 a) 6)))
(fma.f64 2 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 -3 (*.f64 (pow.f64 (cos.f64 a) 3) b))) (fma.f64 (fma.f64 (*.f64 2 (+.f64 (*.f64 (pow.f64 (cos.f64 a) 3) -1/2) (*.f64 (cos.f64 a) (+.f64 (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (*.f64 2 (pow.f64 (sin.f64 a) 2)))))) (pow.f64 (cos.f64 a) 3) (pow.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 (cos.f64 a) 2) -3)) 2)) (*.f64 b b) (pow.f64 (cos.f64 a) 6)))
(fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) -3)) (*.f64 (pow.f64 (cos.f64 a) 3) b)) (fma.f64 (fma.f64 (*.f64 2 (+.f64 (*.f64 (pow.f64 (cos.f64 a) 3) -1/2) (*.f64 (cos.f64 a) (+.f64 (*.f64 2 (pow.f64 (sin.f64 a) 2)) (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)))))) (pow.f64 (cos.f64 a) 3) (*.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 4)) 9)) (*.f64 b b) (pow.f64 (cos.f64 a) 6)))
(+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (*.f64 (pow.f64 (cos.f64 a) 3) b))) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))))) (+.f64 (*.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) (cos.f64 a)) (*.f64 1/3 (*.f64 (sin.f64 a) (cos.f64 a))))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))))) (pow.f64 (cos.f64 a) 3))) (*.f64 2 (*.f64 (+.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))) (cos.f64 a)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 a) 2) (cos.f64 a))) (*.f64 -1/2 (pow.f64 (cos.f64 a) 3)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))))))) (pow.f64 b 3)) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (*.f64 -1 (pow.f64 (cos.f64 a) 2))) (cos.f64 a)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 a) 2) (cos.f64 a))) (*.f64 -1/2 (pow.f64 (cos.f64 a) 3)))) (pow.f64 (cos.f64 a) 3))) (pow.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2))) (*.f64 -2 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) 2)) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 6))))
(fma.f64 2 (*.f64 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -3) (*.f64 (pow.f64 (cos.f64 a) 3) b)) (fma.f64 (*.f64 2 (+.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (fma.f64 -1 (*.f64 (sin.f64 a) (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2)))) (fma.f64 (cos.f64 a) (*.f64 4/3 (*.f64 (cos.f64 a) (sin.f64 a))) (*.f64 7/6 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))))) (*.f64 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -3) (fma.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2))) (cos.f64 a) (fma.f64 2 (*.f64 (cos.f64 a) (pow.f64 (sin.f64 a) 2)) (*.f64 (pow.f64 (cos.f64 a) 3) -1/2)))))) (pow.f64 b 3) (fma.f64 (fma.f64 2 (*.f64 (pow.f64 (cos.f64 a) 3) (fma.f64 (+.f64 (pow.f64 (sin.f64 a) 2) (neg.f64 (pow.f64 (cos.f64 a) 2))) (cos.f64 a) (fma.f64 2 (*.f64 (cos.f64 a) (pow.f64 (sin.f64 a) 2)) (*.f64 (pow.f64 (cos.f64 a) 3) -1/2)))) (pow.f64 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -3) 2)) (*.f64 b b) (pow.f64 (cos.f64 a) 6))))
(fma.f64 2 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 -3 (*.f64 (pow.f64 (cos.f64 a) 3) b))) (fma.f64 (*.f64 2 (fma.f64 (pow.f64 (cos.f64 a) 3) (-.f64 (fma.f64 7/6 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 4/3 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (*.f64 (sin.f64 a) (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)))) (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 -3 (+.f64 (*.f64 (pow.f64 (cos.f64 a) 3) -1/2) (*.f64 (cos.f64 a) (+.f64 (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (*.f64 2 (pow.f64 (sin.f64 a) 2))))))))) (pow.f64 b 3) (fma.f64 (fma.f64 (*.f64 2 (+.f64 (*.f64 (pow.f64 (cos.f64 a) 3) -1/2) (*.f64 (cos.f64 a) (+.f64 (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) (*.f64 2 (pow.f64 (sin.f64 a) 2)))))) (pow.f64 (cos.f64 a) 3) (pow.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 (cos.f64 a) 2) -3)) 2)) (*.f64 b b) (pow.f64 (cos.f64 a) 6))))
(fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) -3)) (*.f64 (pow.f64 (cos.f64 a) 3) b)) (fma.f64 (*.f64 2 (fma.f64 (pow.f64 (cos.f64 a) 3) (-.f64 (*.f64 (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) 5/2) (-.f64 (pow.f64 (sin.f64 a) 3) (*.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)))) (*.f64 (*.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (sin.f64 a) -3)) (+.f64 (*.f64 (pow.f64 (cos.f64 a) 3) -1/2) (*.f64 (cos.f64 a) (+.f64 (*.f64 2 (pow.f64 (sin.f64 a) 2)) (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)))))))) (pow.f64 b 3) (fma.f64 (fma.f64 (*.f64 2 (+.f64 (*.f64 (pow.f64 (cos.f64 a) 3) -1/2) (*.f64 (cos.f64 a) (+.f64 (*.f64 2 (pow.f64 (sin.f64 a) 2)) (-.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)))))) (pow.f64 (cos.f64 a) 3) (*.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 4)) 9)) (*.f64 b b) (pow.f64 (cos.f64 a) 6))))
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (-.f64 a (*.f64 -1 b))) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 b) 6)
(+.f64 (pow.f64 (cos.f64 b) 6) (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (*.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) (pow.f64 (cos.f64 b) 3))) a))
(+.f64 (pow.f64 (cos.f64 b) 6) (*.f64 a (fma.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3) (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3)))))
(fma.f64 a (*.f64 2 (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)))) (pow.f64 (cos.f64 b) 6))
(fma.f64 a (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -6)) (pow.f64 (cos.f64 b) 6))
(+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 b) 2) (cos.f64 b))) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (pow.f64 (cos.f64 b) 3))) (pow.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) 2)) (pow.f64 a 2)) (+.f64 (pow.f64 (cos.f64 b) 6) (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (*.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) (pow.f64 (cos.f64 b) 3))) a)))
(fma.f64 (fma.f64 2 (*.f64 (pow.f64 (cos.f64 b) 3) (fma.f64 (cos.f64 b) (fma.f64 -1 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) (fma.f64 2 (*.f64 (cos.f64 b) (pow.f64 (sin.f64 b) 2)) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3))))) (pow.f64 (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3) 2)) (*.f64 a a) (+.f64 (pow.f64 (cos.f64 b) 6) (*.f64 a (fma.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3) (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3))))))
(fma.f64 (fma.f64 2 (*.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)) (*.f64 (cos.f64 b) (+.f64 (-.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 2 (pow.f64 (sin.f64 b) 2)))))) (pow.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)) 2)) (*.f64 a a) (fma.f64 a (*.f64 2 (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)))) (pow.f64 (cos.f64 b) 6)))
(fma.f64 (fma.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 3)) (*.f64 3 (*.f64 (cos.f64 b) (pow.f64 (sin.f64 b) 2)))))) (pow.f64 (cos.f64 b) 3) (*.f64 9 (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 4)))) (*.f64 a a) (fma.f64 a (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -6)) (pow.f64 (cos.f64 b) 6)))
(+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 b) 2) (cos.f64 b))) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (pow.f64 (cos.f64 b) 3))) (pow.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) 2)) (pow.f64 a 2)) (+.f64 (pow.f64 (cos.f64 b) 6) (+.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2))) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 b) 2) (cos.f64 b))) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)))) (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))))) (*.f64 2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 b) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)))) (+.f64 (*.f64 (cos.f64 b) (+.f64 (*.f64 (sin.f64 b) (cos.f64 b)) (*.f64 1/3 (*.f64 (sin.f64 b) (cos.f64 b))))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (pow.f64 (cos.f64 b) 3))))) (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))))) (*.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) (pow.f64 (cos.f64 b) 3))) a))))
(fma.f64 (fma.f64 2 (*.f64 (pow.f64 (cos.f64 b) 3) (fma.f64 (cos.f64 b) (fma.f64 -1 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) (fma.f64 2 (*.f64 (cos.f64 b) (pow.f64 (sin.f64 b) 2)) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3))))) (pow.f64 (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3) 2)) (*.f64 a a) (+.f64 (pow.f64 (cos.f64 b) 6) (fma.f64 (pow.f64 a 3) (*.f64 2 (+.f64 (*.f64 (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3) (fma.f64 (cos.f64 b) (fma.f64 -1 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2)) (fma.f64 2 (*.f64 (cos.f64 b) (pow.f64 (sin.f64 b) 2)) (*.f64 -1/2 (pow.f64 (cos.f64 b) 3))))) (*.f64 (pow.f64 (cos.f64 b) 3) (fma.f64 -1 (*.f64 (sin.f64 b) (fma.f64 -1 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) (fma.f64 (cos.f64 b) (*.f64 4/3 (*.f64 (cos.f64 b) (sin.f64 b))) (*.f64 7/6 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))))))) (*.f64 a (fma.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3) (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -3)))))))
(fma.f64 (fma.f64 2 (*.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)) (*.f64 (cos.f64 b) (+.f64 (-.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 2 (pow.f64 (sin.f64 b) 2)))))) (pow.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)) 2)) (*.f64 a a) (+.f64 (pow.f64 (cos.f64 b) 6) (fma.f64 a (*.f64 2 (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)))) (*.f64 2 (*.f64 (fma.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)) (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)) (*.f64 (cos.f64 b) (+.f64 (-.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 2 (pow.f64 (sin.f64 b) 2))))) (*.f64 (pow.f64 (cos.f64 b) 3) (-.f64 (fma.f64 7/6 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) (*.f64 4/3 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)))) (fma.f64 (sin.f64 b) (neg.f64 (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 3))))) (pow.f64 a 3))))))
(+.f64 (fma.f64 (fma.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 3)) (*.f64 3 (*.f64 (cos.f64 b) (pow.f64 (sin.f64 b) 2)))))) (pow.f64 (cos.f64 b) 3) (*.f64 9 (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 4)))) (*.f64 a a) (fma.f64 a (*.f64 (pow.f64 (cos.f64 b) 3) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) -6)) (pow.f64 (cos.f64 b) 6))) (*.f64 (*.f64 2 (pow.f64 a 3)) (fma.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 (cos.f64 b) 2) -3)) (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 b) 3)) (+.f64 (neg.f64 (pow.f64 (cos.f64 b) 3)) (*.f64 3 (*.f64 (cos.f64 b) (pow.f64 (sin.f64 b) 2))))) (*.f64 (pow.f64 (cos.f64 b) 3) (+.f64 (-.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 3)) (*.f64 (*.f64 (sin.f64 b) (pow.f64 (cos.f64 b) 2)) 5/2))))))
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(pow.f64 (cos.f64 (-.f64 b (*.f64 -1 a))) 6)
(pow.f64 (cos.f64 (+.f64 a b)) 6)
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (neg.f64 (*.f64 (sin.f64 a) b)))
(-.f64 (cos.f64 a) (*.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) (fma.f64 -1 (*.f64 (sin.f64 a) b) (*.f64 (*.f64 -1/2 (cos.f64 a)) (*.f64 b b))))
(+.f64 (cos.f64 a) (fma.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)) (*.f64 (sin.f64 a) (neg.f64 b))))
(+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))
(+.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) (fma.f64 -1 (*.f64 (sin.f64 a) b) (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 (*.f64 -1/2 (cos.f64 a)) (*.f64 b b)))))
(+.f64 (cos.f64 a) (-.f64 (fma.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)) (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)))) (*.f64 (sin.f64 a) b)))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))
(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))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (cos.f64 b))
(-.f64 (cos.f64 b) (*.f64 a (sin.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)))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b)))
(-.f64 (fma.f64 -1/2 (*.f64 a (*.f64 a (cos.f64 b))) (cos.f64 b)) (*.f64 a (sin.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))))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(-.f64 (fma.f64 (*.f64 1/6 (sin.f64 b)) (pow.f64 a 3) (fma.f64 -1/2 (*.f64 a (*.f64 a (cos.f64 b))) (cos.f64 b))) (*.f64 a (sin.f64 b)))
(+.f64 (fma.f64 -1/2 (*.f64 a (*.f64 a (cos.f64 b))) (cos.f64 b)) (*.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 (sin.f64 a) (*.f64 b b)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 b (cos.f64 a)) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (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 b b)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (fma.f64 (/.f64 1 (cos.f64 a)) 1/3 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (fma.f64 -1 (*.f64 (pow.f64 b 4) (fma.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (fma.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (neg.f64 (/.f64 (sin.f64 a) (/.f64 (cos.f64 a) (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))))) (/.f64 (*.f64 (sin.f64 a) (*.f64 b b)) (pow.f64 (cos.f64 a) 2)))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (-.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))))))
(+.f64 (/.f64 b (cos.f64 a)) (-.f64 (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (fma.f64 (/.f64 1 (cos.f64 a)) 1/3 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))) (*.f64 (pow.f64 b 4) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3 (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (neg.f64 (fma.f64 (/.f64 1 (cos.f64 a)) 1/3 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.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 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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a))
(+.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)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)) (*.f64 (*.f64 a a) (fma.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (/.f64 -1/2 (/.f64 (cos.f64 b) (sin.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))))
(+.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)))))
(fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (*.f64 (sin.f64 b) (fma.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)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))))
(+.f64 (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)) (*.f64 (*.f64 a a) (fma.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))))) (/.f64 (sin.f64 b) (cos.f64 b))))
(+.f64 (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (/.f64 -1/2 (/.f64 (cos.f64 b) (sin.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.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 -1/2 (/.f64 (cos.f64 b) (sin.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)))) (/.f64 (sin.f64 b) (cos.f64 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 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)))

eval556.0ms (3%)

Compiler

Compiled 25914 to 8652 computations (66.6% saved)

prune495.0ms (2.7%)

Pruning

75 alts after pruning (70 fresh and 5 done)

PrunedKeptTotal
New1009461055
Fresh332457
Picked101
Done156
Total1044751119
Error
0.0b
Counts
1119 → 75
Alt Table
Click to see full alt table
StatusErrorProgram
15.0b
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3) r)
14.2b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
0.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
53.1b
(*.f64 r (*.f64 (sin.f64 b) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a))))))
36.9b
(/.f64 (log.f64 (exp.f64 (sin.f64 b))) (/.f64 (cos.f64 b) r))
27.6b
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) 3/2)))
25.3b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 2) (cbrt.f64 (*.f64 r (tan.f64 b))))
23.2b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b))) r)
30.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
24.9b
(/.f64 (sin.f64 b) (/.f64 (cbrt.f64 (pow.f64 (cos.f64 b) 3)) r))
0.3b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))) r)
14.2b
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
46.3b
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
28.1b
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)
14.3b
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
52.8b
(*.f64 r (log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))
30.6b
(*.f64 r (/.f64 b (cos.f64 a)))
40.7b
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
28.1b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))))
0.6b
(*.f64 r (/.f64 (sin.f64 b) (log.f64 (/.f64 (exp.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))
32.3b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6)))))
14.8b
(*.f64 r (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (cos.f64 (+.f64 b a))))
25.3b
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 3))
26.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
48.6b
(exp.f64 (*.f64 1/3 (log.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))
0.4b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 3))) r)
46.4b
(sqrt.f64 (pow.f64 (*.f64 r (tan.f64 b)) 2))
38.7b
(/.f64 (sin.f64 b) (/.f64 1 r))
24.8b
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
46.1b
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)))
25.1b
(/.f64 (sin.f64 b) (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 3) r))
0.4b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) r)
30.7b
(/.f64 r (/.f64 (cos.f64 a) b))
53.1b
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 b a))))
53.3b
(*.f64 r (-.f64 (+.f64 1 (/.f64 b (cos.f64 a))) 1))
40.7b
(exp.f64 (*.f64 3 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))
0.5b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 3))))
53.1b
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
38.7b
(-.f64 (+.f64 1 (*.f64 r (tan.f64 b))) 1)
0.3b
(*.f64 (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))))) r)
24.8b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
36.9b
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
25.2b
(pow.f64 (/.f64 1 (*.f64 r (tan.f64 b))) -1)
24.9b
(*.f64 (/.f64 1 (cos.f64 b)) (/.f64 (sin.f64 b) (/.f64 1 r)))
28.2b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 a) 3))))
0.3b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
0.6b
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))) r)
0.3b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) 1))) r)
21.0b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) a))) r)
41.4b
(*.f64 r b)
28.6b
(*.f64 r (/.f64 b (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
26.7b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))) r)
42.3b
(*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b)
25.3b
(pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 3)
58.4b
(/.f64 (*.f64 r 6) (pow.f64 a 3))
31.1b
(+.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))))))
33.9b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 a) 6)))))
16.4b
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))) r)
49.6b
(pow.f64 (pow.f64 (*.f64 r (tan.f64 b)) 3) 1/3)
45.5b
(*.f64 r (*.f64 (/.f64 (sqrt.f64 b) 1) (/.f64 (sqrt.f64 b) (cos.f64 a))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
38.7b
(*.f64 (sin.f64 b) r)
24.7b
(*.f64 (tan.f64 b) r)
30.8b
(*.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a)))) r)
25.3b
(/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (/.f64 (cos.f64 b) r))
14.2b
(*.f64 r (/.f64 (log1p.f64 (expm1.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
44.7b
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))
24.8b
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
14.1b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))))
24.8b
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
39.1b
(/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (/.f64 (cos.f64 b) r))
37.0b
(*.f64 r (/.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) (cos.f64 (+.f64 b a))))
44.0b
(exp.f64 (log.f64 (*.f64 r (tan.f64 b))))
14.2b
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
0.3b
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))) r)
Compiler

Compiled 2481 to 1693 computations (31.8% saved)

localize58.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

Compiled 63 to 12 computations (81% saved)

series30.0ms (0.2%)

Counts
4 → 92
Calls

27 calls:

TimeVariablePointExpression
2.0ms
a
@inf
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))) r)
2.0ms
b
@inf
(/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b))))
2.0ms
b
@-inf
(/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b))))
2.0ms
r
@inf
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))) r)
2.0ms
a
@inf
(/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b))))

rewrite186.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
674×log-prod_binary64
669×prod-diff_binary64
242×expm1-udef_binary64
242×log1p-udef_binary64
226×pow3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01375
127239
2366139
Stop Event
node limit
Counts
4 → 246
Calls
Call 1
Inputs
(/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))) r)
(fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))
(*.f64 (cos.f64 a) (cos.f64 b))
Outputs
((#(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 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (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 1 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (/.f64 (sin.f64 b) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (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 pow.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 1))))))
((#(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 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) 1) (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2)) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (sqrt.f64 (cos.f64 (+.f64 b a)))) (sqrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(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 pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 r) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3) (pow.f64 r 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 r 3) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (sin.f64 a) (sin.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (sqrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 b a)) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sqrt.f64 (sin.f64 a)))) (*.f64 (sqrt.f64 (sin.f64 b)) (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sin.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1) (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1/2 (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1/2 (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (cbrt.f64 (pow.f64 (sin.f64 b) 2)) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (cbrt.f64 (pow.f64 (sin.f64 b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1/2 (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1/2 (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1/2 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)) (*.f64 (cbrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (sin.f64 a)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1/2 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a)))))) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))) (*.f64 (sqrt.f64 (sin.f64 a)) (*.f64 (sin.f64 b) (sqrt.f64 (sin.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 1 (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 a) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (cos.f64 a)) (*.f64 (sqrt.f64 (cos.f64 a)) (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a))) 1/2 (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cos.f64 b) (sqrt.f64 (cos.f64 a))) (sqrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1)))) (fma.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1) (*.f64 (sin.f64 a) (*.f64 (sin.f64 b) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a)))) (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 a) (cos.f64 (neg.f64 b))) (*.f64 (sin.f64 a) (sin.f64 (neg.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 a) (cos.f64 (*.f64 -1 b))) (*.f64 (sin.f64 a) (sin.f64 (*.f64 -1 b))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 a) (cos.f64 (*.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b)))) (*.f64 (sin.f64 a) (sin.f64 (*.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 a) (cos.f64 (*.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b)))) (*.f64 (sin.f64 a) (sin.f64 (*.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (fma.f64 (neg.f64 b) 1 b))) (*.f64 (sin.f64 (-.f64 a b)) (sin.f64 (fma.f64 (neg.f64 b) 1 b))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))) (*.f64 (sin.f64 (-.f64 a b)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (+.f64 b a)) (cos.f64 (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))) (*.f64 (sin.f64 (-.f64 a b)) (sin.f64 (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 2) (cbrt.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 b a))) (sqrt.f64 (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 (+.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3)) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)) (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2)) (neg.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (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 sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a)) (exp.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (exp.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a)) (exp.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (exp.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (+.f64 b a))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (-.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (-.f64 b a))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 b a))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 a) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.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))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.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)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (+.f64 (cos.f64 (+.f64 b a)) (cos.f64 (+.f64 b a)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 b)) (cos.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 (cos.f64 b) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (cos.f64 a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 a) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 a) (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 1))))))

simplify106.0ms (0.6%)

Algorithm
egg-herbie
Rules
497×times-frac_binary64
452×associate-/l*_binary64
437×associate-*l/_binary64
359×associate-*r/_binary64
303×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01902781
16242631
222932561
Stop Event
node limit
Counts
338 → 308
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 (-.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (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 (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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(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))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.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/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))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.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))))
(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))))))
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 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (pow.f64 b 3) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)))))
(+.f64 (/.f64 b (cos.f64 a)) (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))))
(+.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)) (fma.f64 (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))) (pow.f64 b 3) (fma.f64 -1 (*.f64 (pow.f64 b 4) (fma.f64 1/6 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (fma.f64 -1/2 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (neg.f64 (/.f64 (sin.f64 a) (/.f64 (cos.f64 a) (-.f64 (/.f64 1/2 (cos.f64 a)) (+.f64 (/.f64 1/6 (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))))) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))))))
(+.f64 (/.f64 b (cos.f64 a)) (fma.f64 (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))) (pow.f64 b 3) (-.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 1 (cos.f64 a)) 1/3) (/.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))))))
(+.f64 (/.f64 b (cos.f64 a)) (-.f64 (*.f64 (*.f64 b b) (+.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))) b))) (*.f64 (pow.f64 b 4) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) -1/3 (*.f64 (/.f64 (neg.f64 (sin.f64 a)) (cos.f64 a)) (+.f64 (/.f64 1/3 (cos.f64 a)) (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3))))))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 a (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a))
(+.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)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (/.f64 a (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) (*.f64 (*.f64 a a) (-.f64 (/.f64 (*.f64 -1/2 (sin.f64 b)) (cos.f64 b)) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))))
(+.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)))))
(fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.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 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) -1/3))) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.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 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)))))
(+.f64 (-.f64 (/.f64 a (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (sin.f64 b) 2))) (*.f64 (*.f64 a a) (-.f64 (/.f64 (*.f64 -1/2 (sin.f64 b)) (cos.f64 b)) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (fma.f64 (neg.f64 (pow.f64 a 3)) (fma.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 -1/2 (sin.f64 b)) (cos.f64 b)) (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (/.f64 (sin.f64 b) (cos.f64 b))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a))) (*.f64 (pow.f64 a 3) (fma.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 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)))))))
(/.f64 (sin.f64 b) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 b (/.f64 (cos.f64 a) r))
(*.f64 (/.f64 b (cos.f64 a)) r)
(*.f64 (/.f64 r (cos.f64 a)) b)
(+.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 b (/.f64 (cos.f64 a) r)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (/.f64 (sin.f64 a) (/.f64 (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)) r)))
(+.f64 (*.f64 (/.f64 r (cos.f64 a)) b) (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r))
(+.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 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 b (/.f64 (cos.f64 a) r)) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))))))
(+.f64 (/.f64 (sin.f64 a) (/.f64 (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)) r)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) r) (pow.f64 (cos.f64 a) 3))) (*.f64 (/.f64 b (cos.f64 a)) r)))
(+.f64 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r) (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r)) (*.f64 (/.f64 r (cos.f64 a)) b)))
(+.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 (*.f64 b b) r)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 b (/.f64 (cos.f64 a) r)) (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))) (neg.f64 (*.f64 (pow.f64 b 4) (fma.f64 -1 (/.f64 (sin.f64 a) (/.f64 (cos.f64 a) (-.f64 (*.f64 -1/6 (/.f64 r (cos.f64 a))) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))))) (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) r)) -1/3)))))))
(+.f64 (/.f64 (sin.f64 a) (/.f64 (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b)) r)) (-.f64 (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) r) (pow.f64 (cos.f64 a) 3))) (*.f64 (/.f64 b (cos.f64 a)) r)) (*.f64 (pow.f64 b 4) (-.f64 (*.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) -1/3) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 a) 2)) r) (pow.f64 (cos.f64 a) 3))))))))
(-.f64 (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r)) (*.f64 (/.f64 r (cos.f64 a)) b)) (-.f64 (*.f64 (pow.f64 b 4) (-.f64 (/.f64 (*.f64 (sin.f64 a) r) (/.f64 (pow.f64 (cos.f64 a) 2) -1/3)) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) r))))) (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) r)))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(+.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 (sin.f64 b) (/.f64 (cos.f64 b) r)) (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))))
(+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) r))
(+.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) r)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (*.f64 a (*.f64 a (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) r) (pow.f64 (cos.f64 b) 3)))))))
(+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) r)) (*.f64 a (neg.f64 a)))))
(+.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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (fma.f64 -1 (*.f64 (pow.f64 a 3) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) r)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) r)) -1/3))) (fma.f64 -1 (*.f64 (*.f64 a a) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) r)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))) (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (-.f64 (-.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (*.f64 a (*.f64 a (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) r) (pow.f64 (cos.f64 b) 3)))))) (*.f64 (pow.f64 a 3) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) r)) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 b) 3)) r) (pow.f64 (cos.f64 b) 3))))))))
(+.f64 (*.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) r) (-.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (*.f64 a a) (+.f64 (*.f64 (fma.f64 (*.f64 (/.f64 r (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) r)))) a) (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) r))))))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))) r))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1 (*.f64 (sin.f64 a) b)))
(+.f64 (cos.f64 a) (neg.f64 (*.f64 b (sin.f64 a))))
(-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))
(+.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) (fma.f64 -1 (*.f64 b (sin.f64 a)) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)))))
(+.f64 (cos.f64 a) (fma.f64 -1/2 (*.f64 b (*.f64 b (cos.f64 a))) (*.f64 (sin.f64 a) (neg.f64 b))))
(+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))
(+.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) (fma.f64 -1 (*.f64 b (sin.f64 a)) (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b))))))
(+.f64 (-.f64 (cos.f64 a) (*.f64 b (sin.f64 a))) (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 (cos.f64 a) (*.f64 (*.f64 b b) -1/2))))
(+.f64 (fma.f64 -1/2 (*.f64 b (*.f64 b (cos.f64 a))) (cos.f64 a)) (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 (pow.f64 b 3) 1/6))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 b)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 b) a)) (cos.f64 b))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (cos.f64 b))
(-.f64 (cos.f64 b) (*.f64 a (sin.f64 b)))
(fma.f64 (neg.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)))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b)))
(-.f64 (fma.f64 (*.f64 -1/2 (*.f64 a a)) (cos.f64 b) (cos.f64 b)) (*.f64 a (sin.f64 b)))
(fma.f64 (neg.f64 (sin.f64 b)) a (fma.f64 (*.f64 -1/2 (*.f64 a a)) (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))))
(fma.f64 -1 (*.f64 a (sin.f64 b)) (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (fma.f64 (*.f64 -1/2 (*.f64 a a)) (cos.f64 b) (cos.f64 b))) (*.f64 a (sin.f64 b)))
(+.f64 (fma.f64 (*.f64 -1/2 (*.f64 a a)) (cos.f64 b) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 1/6 (pow.f64 a 3)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b)))
(fma.f64 -1 (*.f64 (sin.f64 a) (sin.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 b)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (cos.f64 b))
(fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (cos.f64 b))
(fma.f64 (*.f64 -1/2 (*.f64 a a)) (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)))
(fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (fma.f64 1/24 (*.f64 (cos.f64 b) (pow.f64 a 4)) (cos.f64 b)))
(+.f64 (cos.f64 b) (*.f64 (cos.f64 b) (+.f64 (*.f64 -1/2 (*.f64 a a)) (*.f64 1/24 (pow.f64 a 4)))))
(*.f64 (cos.f64 b) (+.f64 (*.f64 -1/2 (*.f64 a a)) (+.f64 (*.f64 1/24 (pow.f64 a 4)) 1)))
(+.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))))
(fma.f64 -1/720 (*.f64 (cos.f64 b) (pow.f64 a 6)) (fma.f64 -1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (fma.f64 1/24 (*.f64 (cos.f64 b) (pow.f64 a 4)) (cos.f64 b))))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 a 4)) 1) (cos.f64 b)) (*.f64 (cos.f64 b) (+.f64 (*.f64 -1/720 (pow.f64 a 6)) (*.f64 -1/2 (*.f64 a a)))))
(+.f64 (*.f64 (cos.f64 b) (+.f64 (+.f64 (*.f64 -1/720 (pow.f64 a 6)) (*.f64 -1/2 (*.f64 a a))) (*.f64 1/24 (pow.f64 a 4)))) (cos.f64 b))
(cos.f64 a)
(+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (pow.f64 b 2))))
(+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b))))
(fma.f64 -1/2 (*.f64 b (*.f64 b (cos.f64 a))) (cos.f64 a))
(+.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)))))
(fma.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4)) (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b)))))
(fma.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4)) (fma.f64 -1/2 (*.f64 b (*.f64 b (cos.f64 a))) (cos.f64 a)))
(+.f64 (cos.f64 a) (*.f64 (cos.f64 a) (+.f64 (*.f64 (pow.f64 b 4) 1/24) (*.f64 (*.f64 b b) -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))))))
(fma.f64 -1/720 (*.f64 (cos.f64 a) (pow.f64 b 6)) (fma.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4)) (+.f64 (cos.f64 a) (*.f64 -1/2 (*.f64 (cos.f64 a) (*.f64 b b))))))
(fma.f64 -1/720 (*.f64 (cos.f64 a) (pow.f64 b 6)) (fma.f64 1/24 (*.f64 (cos.f64 a) (pow.f64 b 4)) (fma.f64 -1/2 (*.f64 b (*.f64 b (cos.f64 a))) (cos.f64 a))))
(+.f64 (fma.f64 -1/2 (*.f64 b (*.f64 b (cos.f64 a))) (cos.f64 a)) (*.f64 (cos.f64 a) (+.f64 (*.f64 1/24 (pow.f64 b 4)) (*.f64 -1/720 (pow.f64 b 6)))))

localize7.0ms (0%)

Local error

Found 2 expressions with local error:

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

Compiled 11 to 5 computations (54.5% saved)

series2.0ms (0%)

Counts
1 → 4
Calls

6 calls:

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

rewrite43.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
462×pow1_binary64
440×add-sqr-sqrt_binary64
435×*-un-lft-identity_binary64
422×add-log-exp_binary64
422×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
1976
211466
Stop Event
node limit
Counts
1 → 11
Calls
Call 1
Inputs
(*.f64 (sin.f64 b) r)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 b) r)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 b) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 b) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 b) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 b) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 b)) r))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 b) r)))))))

simplify109.0ms (0.6%)

Algorithm
egg-herbie
Rules
1156×fma-def_binary64
690×unswap-sqr_binary64
654×sqr-pow_binary64
596×cube-prod_binary64
434×fabs-mul_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02476
16873
218962
358060
4157058
5241258
6261958
7306758
8394658
9408958
10431658
11479858
12539458
13626758
14737658
Stop Event
node limit
Counts
15 → 18
Calls
Call 1
Inputs
(*.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)))))
Outputs
(*.f64 r b)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) r)) (*.f64 r b))
(fma.f64 -1/6 (*.f64 r (pow.f64 b 3)) (*.f64 r b))
(*.f64 r (+.f64 b (*.f64 -1/6 (pow.f64 b 3))))
(*.f64 r (fma.f64 -1/6 (pow.f64 b 3) b))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 b 3) r)) (+.f64 (*.f64 r b) (*.f64 1/120 (*.f64 (pow.f64 b 5) r))))
(fma.f64 -1/6 (*.f64 r (pow.f64 b 3)) (fma.f64 r b (*.f64 1/120 (*.f64 r (pow.f64 b 5)))))
(fma.f64 -1/6 (*.f64 r (pow.f64 b 3)) (*.f64 r (+.f64 (*.f64 1/120 (pow.f64 b 5)) b)))
(*.f64 r (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (fma.f64 1/120 (pow.f64 b 5) b)))
(*.f64 r (fma.f64 -1/6 (pow.f64 b 3) (fma.f64 1/120 (pow.f64 b 5) b)))
(+.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)))))
(fma.f64 -1/6 (*.f64 r (pow.f64 b 3)) (fma.f64 -1/5040 (*.f64 r (pow.f64 b 7)) (fma.f64 r b (*.f64 1/120 (*.f64 r (pow.f64 b 5))))))
(fma.f64 -1/6 (*.f64 r (pow.f64 b 3)) (fma.f64 -1/5040 (*.f64 r (pow.f64 b 7)) (*.f64 r (+.f64 (*.f64 1/120 (pow.f64 b 5)) b))))
(*.f64 r (+.f64 (fma.f64 1/120 (pow.f64 b 5) b) (fma.f64 -1/6 (pow.f64 b 3) (*.f64 -1/5040 (pow.f64 b 7)))))
(*.f64 r (+.f64 (fma.f64 -1/6 (pow.f64 b 3) b) (fma.f64 1/120 (pow.f64 b 5) (*.f64 -1/5040 (pow.f64 b 7)))))
(*.f64 r (fma.f64 -1/6 (pow.f64 b 3) (fma.f64 1/120 (pow.f64 b 5) (fma.f64 -1/5040 (pow.f64 b 7) b))))
(*.f64 r (fma.f64 -1/5040 (pow.f64 b 7) (fma.f64 -1/6 (pow.f64 b 3) (fma.f64 1/120 (pow.f64 b 5) b))))

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 34 to 9 computations (73.5% saved)

series5.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite65.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
592×prod-diff_binary64
575×log-prod_binary64
288×pow2_binary64
235×fma-def_binary64
201×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01016
122314
2337614
Stop Event
node limit
Counts
1 → 56
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 b a))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (*.f64 r (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 r (*.f64 (sin.f64 b) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 b) r) (/.f64 1 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) r) 2)) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 2) (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 b) r)) (*.f64 (sqrt.f64 (*.f64 (sin.f64 b) r)) (/.f64 1 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) (sqrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 b) (neg.f64 r)) (/.f64 1 (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 (+.f64 b a))) (*.f64 (sin.f64 b) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 r 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))) r)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) r) 2)) 1) (/.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 b) r)) 1) (/.f64 (sqrt.f64 (*.f64 (sin.f64 b) r)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))) (/.f64 r (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 r (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))) (/.f64 (sin.f64 b) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))) (/.f64 (*.f64 (sin.f64 b) r) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) r) 2)) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))) (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 b) r)) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))) (/.f64 (sqrt.f64 (*.f64 (sin.f64 b) r)) (cbrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 r (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 r (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (*.f64 (sin.f64 b) r) (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) r) 2)) (sqrt.f64 (cos.f64 (+.f64 b a)))) (/.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) (sqrt.f64 (cos.f64 (+.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) -1) (/.f64 r (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 r -1) (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 b) r) 2)) -1) (/.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 b) r)) -1) (/.f64 (sqrt.f64 (*.f64 (sin.f64 b) r)) (cos.f64 (+.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 b) r) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (exp.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 b) r) 3) (pow.f64 (cos.f64 (+.f64 b a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 1))))))

simplify66.0ms (0.4%)

Algorithm
egg-herbie
Rules
414×associate-*r*_binary64
405×times-frac_binary64
372×associate-*l*_binary64
336×associate-/l*_binary64
303×distribute-neg-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01001024
1332981
21078937
36275926
Stop Event
node limit
Counts
92 → 76
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 r b) (cos.f64 a)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 r b) (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))))
(+.f64 (*.f64 -1 (*.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 -1 (/.f64 (*.f64 r b) (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))))
(+.f64 (*.f64 -1 (*.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 -1 (/.f64 (*.f64 r b) (cos.f64 a))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))) (*.f64 (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))) (+.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) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(+.f64 (*.f64 (+.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)))) (pow.f64 a 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(+.f64 (*.f64 (+.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)))) (pow.f64 a 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (+.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))))) (pow.f64 a 3)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
Outputs
(*.f64 -1 (/.f64 (*.f64 r b) (cos.f64 a)))
(neg.f64 (/.f64 r (/.f64 (cos.f64 a) b)))
(/.f64 (neg.f64 (*.f64 r b)) (cos.f64 a))
(*.f64 (/.f64 (neg.f64 r) (cos.f64 a)) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 r b) (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))))
(*.f64 -1 (+.f64 (/.f64 r (/.f64 (cos.f64 a) b)) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (*.f64 b b))) (pow.f64 (cos.f64 a) 2))))
(-.f64 (/.f64 (neg.f64 (*.f64 r b)) (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (*.f64 b b))))
(neg.f64 (fma.f64 (/.f64 r (cos.f64 a)) b (*.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) (*.f64 b b))))
(+.f64 (*.f64 -1 (*.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 -1 (/.f64 (*.f64 r b) (cos.f64 a))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))))
(fma.f64 -1 (*.f64 (pow.f64 b 3) (-.f64 (/.f64 (*.f64 -1/6 r) (cos.f64 a)) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))))) (*.f64 -1 (+.f64 (/.f64 r (/.f64 (cos.f64 a) b)) (/.f64 (*.f64 (sin.f64 a) (*.f64 r (*.f64 b b))) (pow.f64 (cos.f64 a) 2)))))
(-.f64 (-.f64 (/.f64 (neg.f64 (*.f64 r b)) (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (*.f64 b b)))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (*.f64 r (pow.f64 (sin.f64 a) 2))) (pow.f64 (cos.f64 a) 3)))))
(neg.f64 (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2))) (fma.f64 (/.f64 r (cos.f64 a)) b (*.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) (*.f64 b b)))))
(+.f64 (*.f64 -1 (*.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 -1 (/.f64 (*.f64 r b) (cos.f64 a))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2))) (*.f64 (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 a) r) (pow.f64 (cos.f64 a) 2))) (+.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)))))
(fma.f64 -1 (*.f64 (pow.f64 b 3) (-.f64 (/.f64 (*.f64 -1/6 r) (cos.f64 a)) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r)))))) (fma.f64 -1 (/.f64 r (/.f64 (cos.f64 a) b)) (fma.f64 -1 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (*.f64 b b))) (pow.f64 (cos.f64 a) 2)) (*.f64 (fma.f64 1/6 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) r)) (fma.f64 -1 (/.f64 (sin.f64 a) (/.f64 (cos.f64 a) (-.f64 (/.f64 (*.f64 -1/6 r) (cos.f64 a)) (fma.f64 -1/2 (/.f64 r (cos.f64 a)) (neg.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) r))))))) (*.f64 -1/2 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) r))))) (pow.f64 b 4)))))
(-.f64 (-.f64 (fma.f64 (fma.f64 1/6 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) r) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) r)) (*.f64 (/.f64 (sin.f64 a) (cos.f64 a)) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (*.f64 r (pow.f64 (sin.f64 a) 2))) (pow.f64 (cos.f64 a) 3)))))) (pow.f64 b 4) (/.f64 (neg.f64 (*.f64 (sin.f64 a) (*.f64 r (*.f64 b b)))) (pow.f64 (cos.f64 a) 2))) (/.f64 r (/.f64 (cos.f64 a) b))) (*.f64 (pow.f64 b 3) (-.f64 (*.f64 (/.f64 r (cos.f64 a)) 1/3) (/.f64 (neg.f64 (*.f64 r (pow.f64 (sin.f64 a) 2))) (pow.f64 (cos.f64 a) 3)))))
(fma.f64 -1 (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2))) (fma.f64 (/.f64 r (cos.f64 a)) b (*.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) (*.f64 b b)))) (*.f64 (-.f64 (*.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) -1/3) (*.f64 (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2))) (/.f64 (sin.f64 a) (cos.f64 a)))) (pow.f64 b 4)))
(-.f64 (*.f64 (-.f64 (*.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) -1/3) (*.f64 (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2))) (/.f64 (sin.f64 a) (cos.f64 a)))) (pow.f64 b 4)) (fma.f64 (pow.f64 b 3) (fma.f64 (/.f64 r (cos.f64 a)) 1/3 (*.f64 (/.f64 r (pow.f64 (cos.f64 a) 3)) (pow.f64 (sin.f64 a) 2))) (fma.f64 (/.f64 r (cos.f64 a)) b (*.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) (*.f64 b b)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 a (*.f64 -1 b)))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r a))) (neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))))
(-.f64 (/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 b)) (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r a))))
(neg.f64 (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (*.f64 (*.f64 r a) (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (*.f64 (+.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)))) (pow.f64 a 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))))
(fma.f64 (fma.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))) (*.f64 a a) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r a))) (neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))
(-.f64 (fma.f64 (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) r)) (*.f64 a a) (neg.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r a))))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (neg.f64 r))) (*.f64 a a)) (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (*.f64 (*.f64 r a) (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))) (*.f64 a a)) (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (*.f64 (*.f64 r a) (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (*.f64 (+.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)))) (pow.f64 a 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))) (*.f64 (+.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))))) (pow.f64 a 3)))))
(fma.f64 (fma.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))) (*.f64 a a) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r a))) (fma.f64 -1 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (*.f64 (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (fma.f64 -1 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (*.f64 -1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))))) (*.f64 (/.f64 (*.f64 r (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) -1/3)) (pow.f64 a 3)))))
(fma.f64 (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) r)) (*.f64 a a) (-.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) r) -1/3 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) r)))) (pow.f64 a 3)) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r a)))))
(fma.f64 a (*.f64 a (fma.f64 -1/2 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (neg.f64 r)))) (-.f64 (*.f64 (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (neg.f64 r))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 r -1/3))) (pow.f64 a 3)) (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (*.f64 (*.f64 r a) (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2))))))
(-.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 -1/2 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 r -1/3)))) (fma.f64 -1/2 (*.f64 r (/.f64 (sin.f64 b) (cos.f64 b))) (*.f64 (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3) (neg.f64 r))))) (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (*.f64 (*.f64 r a) (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (-.f64 b (*.f64 -1 a)))))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 (+.f64 b a)))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (cos.f64 b) r)
0.3b
(pow.f64 (/.f64 (cos.f64 b) r) 2)
0.3b
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))
29.5b
(sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2))
Compiler

Compiled 37 to 16 computations (56.8% saved)

series8.0ms (0%)

Counts
3 → 72
Calls

18 calls:

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

rewrite81.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
475×log-prod_binary64
365×exp-prod_binary64
308×prod-exp_binary64
250×pow-prod-down_binary64
243×pow2_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01026
121326
2251221
Stop Event
node limit
Counts
3 → 183
Calls
Call 1
Inputs
(sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2))
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))
(pow.f64 (/.f64 (cos.f64 b) r) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (cos.f64 b) r))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (cos.f64 b) r))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (cos.f64 b) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (cos.f64 b) r)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (cos.f64 b) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (cos.f64 b) r))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 b) (/.f64 1 r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 b) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (cos.f64 b) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)) (cbrt.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (/.f64 1 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (cos.f64 b) r)) (sqrt.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 b)) (*.f64 (sqrt.f64 (cos.f64 b)) (/.f64 1 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cos.f64 b)) (/.f64 1 (neg.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 r) (cos.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) 1) (/.f64 (cbrt.f64 (cos.f64 b)) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 b)) 1) (/.f64 (sqrt.f64 (cos.f64 b)) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 r) -2) (/.f64 (cos.f64 b) (cbrt.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (pow.f64 (cbrt.f64 r) 2)) (cbrt.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (cos.f64 b)) (pow.f64 (cbrt.f64 r) 2)) (/.f64 (sqrt.f64 (cos.f64 b)) (cbrt.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 r -1/2) (/.f64 (cos.f64 b) (sqrt.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (sqrt.f64 r)) (/.f64 (cbrt.f64 (cos.f64 b)) (sqrt.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 b) r)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 r (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 r (cos.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (/.f64 r (cbrt.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cos.f64 b)) (/.f64 r (sqrt.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 b)) (neg.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 r (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (cos.f64 b))) (neg.f64 (neg.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 b) (sqrt.f64 r)) (sqrt.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 b) 1) r)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 b) (pow.f64 (cbrt.f64 r) 2)) (cbrt.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 b) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 b) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 b) r) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (cos.f64 b) r) 6) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (cos.f64 b) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 r (cos.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 r 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 r (cos.f64 b)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (cos.f64 b) r))) 2)) (cbrt.f64 (log.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (cos.f64 b) r)))) (sqrt.f64 (log.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (cos.f64 b) (neg.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (cos.f64 b) r))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 r 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (cos.f64 b) r))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (cos.f64 b) r))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (cos.f64 b) r))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 r (cos.f64 b))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (cos.f64 b)) 1) (log.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (cos.f64 b)) (*.f64 (log.f64 r) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (cos.f64 b)) 1) (*.f64 (log.f64 r) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 b)) 1) (neg.f64 (log.f64 r))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (neg.f64 (log.f64 r)) (*.f64 (log.f64 (cos.f64 b)) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (tan.f64 b) r))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (tan.f64 b)) r)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (tan.f64 b)) r))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (tan.f64 b)) r))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (tan.f64 b)) r))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (tan.f64 b) r))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 r (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (tan.f64 b) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (tan.f64 b) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 r (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) (pow.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) 2) (cbrt.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 r (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (tan.f64 b) r)) (sqrt.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 b)) (/.f64 (sin.f64 b) (/.f64 1 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (cos.f64 b)) (/.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (cos.f64 b)) (/.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) -2) (/.f64 (sin.f64 b) (cbrt.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2))) (cbrt.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2))) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (cos.f64 b) r) -1/2) (/.f64 (sin.f64 b) (sqrt.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (sqrt.f64 (/.f64 (cos.f64 b) r))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (tan.f64 b) r)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 b))) (neg.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (tan.f64 b) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (tan.f64 b) r) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (tan.f64 b) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 (tan.f64 b) r)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (/.f64 (cos.f64 b) r) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 1 (*.f64 (tan.f64 b) r)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (tan.f64 b) r))) 2)) (cbrt.f64 (log.f64 (*.f64 (tan.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (tan.f64 b) r)))) (sqrt.f64 (log.f64 (*.f64 (tan.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (/.f64 (neg.f64 (cos.f64 b)) r)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (tan.f64 b) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (tan.f64 b)) r))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (tan.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (/.f64 (cos.f64 b) r) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (tan.f64 b) r)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (tan.f64 b) r))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (tan.f64 b) r))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 (tan.f64 b) r))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (tan.f64 b) r)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 b)) 1) (log.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sin.f64 b)) (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 b)) 1) (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sin.f64 b)) (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 b)) 1) (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 b)) 1) (log.f64 (/.f64 r (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (/.f64 r (cos.f64 b))) (*.f64 (log.f64 (sin.f64 b)) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (/.f64 (cos.f64 b) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 b) (*.f64 (/.f64 1 r) (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 b) r) (/.f64 (cos.f64 b) r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (/.f64 (cos.f64 b) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)) (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 4)) (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (cos.f64 b) r)) (pow.f64 (/.f64 (cos.f64 b) r) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (cos.f64 b) r) 3/2) (sqrt.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (cos.f64 b) r) (cos.f64 b)) (/.f64 1 r))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 5) (cbrt.f64 (/.f64 (cos.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 b) (*.f64 (/.f64 r (cos.f64 b)) r))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 b) (*.f64 r (/.f64 r (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cos.f64 b) r) (/.f64 r (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (pow.f64 (/.f64 (cos.f64 b) r) -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cos.f64 b)) (*.f64 (/.f64 r (cos.f64 b)) (neg.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (neg.f64 (cos.f64 b)) 2) (pow.f64 (neg.f64 r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 b)) (cos.f64 b)) (*.f64 (neg.f64 r) r))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 b)) 1) (*.f64 (neg.f64 r) (/.f64 r (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 b) (neg.f64 (cos.f64 b))) (*.f64 r (neg.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 b) (/.f64 (cos.f64 b) r)) r)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cos.f64 b)) (/.f64 (cos.f64 b) r)) (neg.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 b) r) (cos.f64 b)) r)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 b) r) (neg.f64 (cos.f64 b))) (neg.f64 r))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 4 (log.f64 (/.f64 (cos.f64 b) r))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (cos.f64 b) r) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2) (log.f64 (/.f64 r (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1) (log.f64 (/.f64 r (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2) (log.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1) (log.f64 (/.f64 (cos.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (/.f64 (cos.f64 b) r)) (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2) (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1) (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (/.f64 (cos.f64 b) r)) (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))) 1/2) (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1) (*.f64 (log.f64 (/.f64 (cos.f64 b) r)) 1)))))))

simplify175.0ms (1%)

Algorithm
egg-herbie
Rules
753×associate-/l*_binary64
500×associate-/r*_binary64
337×distribute-rgt-in_binary64
302×distribute-lft-in_binary64
278×associate-*l/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
085923
1227892
2629863
32650859
Stop Event
node limit
Counts
255 → 212
Calls
Call 1
Inputs
(/.f64 1 r)
(+.f64 (/.f64 1 r) (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)))
(+.f64 (/.f64 1 r) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)) (*.f64 1/24 (/.f64 (pow.f64 b 4) r))))
(+.f64 (/.f64 1 r) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 b 6) r)) (*.f64 1/24 (/.f64 (pow.f64 b 4) r)))))
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(*.f64 -1 (/.f64 (cos.f64 b) r))
(*.f64 -1 (/.f64 (cos.f64 b) r))
(*.f64 -1 (/.f64 (cos.f64 b) r))
(*.f64 -1 (/.f64 (cos.f64 b) r))
(*.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) 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 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(/.f64 1 (pow.f64 r 2))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 b 2) (pow.f64 r 2))) (/.f64 1 (pow.f64 r 2)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 b 2) (pow.f64 r 2))) (+.f64 (/.f64 1 (pow.f64 r 2)) (*.f64 1/3 (/.f64 (pow.f64 b 4) (pow.f64 r 2)))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 b 2) (pow.f64 r 2))) (+.f64 (/.f64 1 (pow.f64 r 2)) (+.f64 (*.f64 -2/45 (/.f64 (pow.f64 b 6) (pow.f64 r 2))) (*.f64 1/3 (/.f64 (pow.f64 b 4) (pow.f64 r 2))))))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
Outputs
(/.f64 1 r)
(+.f64 (/.f64 1 r) (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)))
(+.f64 (/.f64 1 r) (*.f64 -1/2 (/.f64 (*.f64 b b) r)))
(fma.f64 -1/2 (/.f64 b (/.f64 r b)) (/.f64 1 r))
(fma.f64 -1/2 (*.f64 (/.f64 b r) b) (/.f64 1 r))
(fma.f64 -1/2 (*.f64 b (/.f64 b r)) (/.f64 1 r))
(+.f64 (/.f64 1 r) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)) (*.f64 1/24 (/.f64 (pow.f64 b 4) r))))
(+.f64 (/.f64 1 r) (fma.f64 -1/2 (/.f64 (*.f64 b b) r) (/.f64 (*.f64 1/24 (pow.f64 b 4)) r)))
(+.f64 (/.f64 1 r) (fma.f64 -1/2 (/.f64 b (/.f64 r b)) (*.f64 1/24 (/.f64 (pow.f64 b 4) r))))
(fma.f64 -1/2 (*.f64 (/.f64 b r) b) (fma.f64 1/24 (/.f64 (pow.f64 b 4) r) (/.f64 1 r)))
(fma.f64 -1/2 (*.f64 b (/.f64 b r)) (fma.f64 1/24 (/.f64 (pow.f64 b 4) r) (/.f64 1 r)))
(+.f64 (/.f64 1 r) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) r)) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 b 6) r)) (*.f64 1/24 (/.f64 (pow.f64 b 4) r)))))
(+.f64 (/.f64 1 r) (fma.f64 -1/2 (/.f64 (*.f64 b b) r) (fma.f64 -1/720 (/.f64 (pow.f64 b 6) r) (/.f64 (*.f64 1/24 (pow.f64 b 4)) r))))
(+.f64 (/.f64 1 r) (fma.f64 -1/2 (/.f64 b (/.f64 r b)) (fma.f64 1/24 (/.f64 (pow.f64 b 4) r) (*.f64 -1/720 (/.f64 (pow.f64 b 6) r)))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 b r) b) (/.f64 1 r)) (fma.f64 -1/720 (/.f64 (pow.f64 b 6) r) (*.f64 (/.f64 1/24 r) (pow.f64 b 4))))
(+.f64 (fma.f64 -1/2 (*.f64 b (/.f64 b r)) (/.f64 1 r)) (fma.f64 -1/720 (/.f64 (pow.f64 b 6) r) (*.f64 (/.f64 1/24 r) (pow.f64 b 4))))
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(/.f64 (cos.f64 b) r)
(*.f64 -1 (/.f64 (cos.f64 b) r))
(neg.f64 (/.f64 (cos.f64 b) r))
(/.f64 (neg.f64 (cos.f64 b)) r)
(*.f64 -1 (/.f64 (cos.f64 b) r))
(neg.f64 (/.f64 (cos.f64 b) r))
(/.f64 (neg.f64 (cos.f64 b)) r)
(*.f64 -1 (/.f64 (cos.f64 b) r))
(neg.f64 (/.f64 (cos.f64 b) r))
(/.f64 (neg.f64 (cos.f64 b)) r)
(*.f64 -1 (/.f64 (cos.f64 b) r))
(neg.f64 (/.f64 (cos.f64 b) r))
(/.f64 (neg.f64 (cos.f64 b)) r)
(*.f64 r b)
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (*.f64 r b))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (*.f64 r b))
(fma.f64 r b (*.f64 r (*.f64 1/3 (pow.f64 b 3))))
(*.f64 r (+.f64 b (*.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))))))))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (fma.f64 r b (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (fma.f64 1/24 r (*.f64 -1/2 (*.f64 r 1/3)))))))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (fma.f64 r b (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r -1/30) (*.f64 r -1/6)))))
(fma.f64 (pow.f64 b 5) (*.f64 r 2/15) (*.f64 r (+.f64 b (*.f64 (pow.f64 b 3) 1/3))))
(+.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)))))))))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (fma.f64 (-.f64 (*.f64 r -1/5040) (fma.f64 -1/2 (-.f64 (*.f64 r 1/120) (fma.f64 1/24 r (*.f64 -1/2 (*.f64 r 1/3)))) (fma.f64 -1/720 r (*.f64 1/24 (*.f64 r 1/3))))) (pow.f64 b 7) (fma.f64 r b (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (fma.f64 1/24 r (*.f64 -1/2 (*.f64 r 1/3))))))))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (fma.f64 (-.f64 (*.f64 r -1/5040) (fma.f64 -1/2 (-.f64 (*.f64 r -1/30) (*.f64 r -1/6)) (fma.f64 r -1/720 (*.f64 r 1/72)))) (pow.f64 b 7) (fma.f64 r b (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r -1/30) (*.f64 r -1/6))))))
(fma.f64 (-.f64 (*.f64 r -1/5040) (fma.f64 -1/2 (*.f64 r 2/15) (*.f64 r 1/80))) (pow.f64 b 7) (fma.f64 (pow.f64 b 5) (*.f64 r 2/15) (*.f64 r (+.f64 b (*.f64 (pow.f64 b 3) 1/3)))))
(fma.f64 (+.f64 (*.f64 r -4/315) (*.f64 -1/2 (*.f64 r -2/15))) (pow.f64 b 7) (fma.f64 (pow.f64 b 5) (*.f64 r 2/15) (*.f64 r (+.f64 b (*.f64 (pow.f64 b 3) 1/3)))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 r (/.f64 (cos.f64 b) (sin.f64 b)))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
(*.f64 (neg.f64 r) (/.f64 (sin.f64 b) (cos.f64 b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
(*.f64 (neg.f64 r) (/.f64 (sin.f64 b) (cos.f64 b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
(*.f64 (neg.f64 r) (/.f64 (sin.f64 b) (cos.f64 b)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)))
(neg.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)))
(/.f64 (neg.f64 (*.f64 r (sin.f64 b))) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
(*.f64 (neg.f64 r) (/.f64 (sin.f64 b) (cos.f64 b)))
(/.f64 1 (pow.f64 r 2))
(/.f64 1 (*.f64 r r))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 b 2) (pow.f64 r 2))) (/.f64 1 (pow.f64 r 2)))
(fma.f64 -1 (/.f64 (*.f64 b b) (*.f64 r r)) (/.f64 1 (*.f64 r r)))
(-.f64 (/.f64 1 (*.f64 r r)) (*.f64 (/.f64 b r) (/.f64 b r)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 b 2) (pow.f64 r 2))) (+.f64 (/.f64 1 (pow.f64 r 2)) (*.f64 1/3 (/.f64 (pow.f64 b 4) (pow.f64 r 2)))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b b) (*.f64 r r)) (/.f64 1 (*.f64 r r))) (*.f64 1/3 (/.f64 (pow.f64 b 4) (*.f64 r r))))
(-.f64 (fma.f64 1/3 (/.f64 (/.f64 (pow.f64 b 4) r) r) (/.f64 1 (*.f64 r r))) (*.f64 (/.f64 b r) (/.f64 b r)))
(-.f64 (fma.f64 1/3 (/.f64 (pow.f64 b 4) (*.f64 r r)) (/.f64 1 (*.f64 r r))) (*.f64 (/.f64 b r) (/.f64 b r)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 b 2) (pow.f64 r 2))) (+.f64 (/.f64 1 (pow.f64 r 2)) (+.f64 (*.f64 -2/45 (/.f64 (pow.f64 b 6) (pow.f64 r 2))) (*.f64 1/3 (/.f64 (pow.f64 b 4) (pow.f64 r 2))))))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 b b) (*.f64 r r)) (/.f64 1 (*.f64 r r))) (fma.f64 -2/45 (/.f64 (pow.f64 b 6) (*.f64 r r)) (*.f64 1/3 (/.f64 (pow.f64 b 4) (*.f64 r r)))))
(+.f64 (-.f64 (/.f64 1 (*.f64 r r)) (*.f64 (/.f64 b r) (/.f64 b r))) (fma.f64 1/3 (/.f64 (/.f64 (pow.f64 b 4) r) r) (*.f64 -2/45 (/.f64 (pow.f64 b 6) (*.f64 r r)))))
(-.f64 (fma.f64 1/3 (/.f64 (pow.f64 b 4) (*.f64 r r)) (fma.f64 -2/45 (/.f64 (pow.f64 b 6) (*.f64 r r)) (/.f64 1 (*.f64 r r)))) (*.f64 (/.f64 b r) (/.f64 b r)))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))
(/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 r 2))
(/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))

localize23.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6)))))
0.2b
(/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6))))
0.3b
(cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6)))
0.6b
(pow.f64 (cos.f64 b) 6)
Compiler

Compiled 45 to 26 computations (42.2% saved)

series8.0ms (0%)

Counts
4 → 52
Calls

15 calls:

TimeVariablePointExpression
2.0ms
b
@0
(pow.f64 (cos.f64 b) 6)
1.0ms
b
@inf
(pow.f64 (cos.f64 b) 6)
1.0ms
b
@-inf
(pow.f64 (cos.f64 b) 6)
1.0ms
b
@-inf
(/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6))))
1.0ms
b
@inf
(/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6))))

rewrite77.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
492×log-prod_binary64
386×prod-exp_binary64
368×exp-prod_binary64
294×pow-prod-down_binary64
261×pow2_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01143
122828
2282318
Stop Event
node limit
Counts
4 → 187
Calls
Call 1
Inputs
(pow.f64 (cos.f64 b) 6)
(cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6)))
(/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (cos.f64 b) 6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (cos.f64 b) 6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (cos.f64 b) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cos.f64 b) 6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cos.f64 b) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cos.f64 b) 6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 b) 6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (cos.f64 b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cos.f64 b) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 (cos.f64 b) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 b) 4) (pow.f64 (cos.f64 b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 b) 3/2) (pow.f64 (cos.f64 b) 9/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 12) (pow.f64 (cos.f64 b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 b) 9/2) (pow.f64 (cos.f64 b) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 b) 5) (cos.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 b) 12))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cos.f64 b) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cos.f64 b) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 b) 18))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cos.f64 b) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cos.f64 b) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 6 (log.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 12 (log.f64 (cos.f64 b))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (cos.f64 b) 18)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (cos.f64 b) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 b)) 3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 b)) 1) 6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1/3) 6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 b)) 3) (*.f64 3 (log.f64 (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/2) (*.f64 3 (log.f64 (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1) (*.f64 3 (log.f64 (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 3 (log.f64 (cos.f64 b))) (*.f64 (log.f64 (cos.f64 b)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 b)) 3) (*.f64 (log.f64 (cos.f64 b)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/2) (*.f64 (log.f64 (cos.f64 b)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1) (*.f64 (log.f64 (cos.f64 b)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 3 (log.f64 (cos.f64 b))) (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 b)) 3) (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/2) (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1) (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 3 (log.f64 (cos.f64 b))) (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cos.f64 b)) 3) (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/2) (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1) (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 b))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 b))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 b))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 b)))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 b)) (pow.f64 (cbrt.f64 (cos.f64 b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (cbrt.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 b)) (sqrt.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 b) 6) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 b) 12) 1/12)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 b) 18) 1/18)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 b) 9) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 b) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 b) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) (*.f64 3 (log.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 b))) 2)) (cbrt.f64 (log.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cos.f64 b)))) (sqrt.f64 (log.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 b)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (cos.f64 b) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 b))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 b)) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 6 (log.f64 (cos.f64 b))) 1/2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 b)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1/3) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (tan.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (tan.f64 b))) 2)) (log.f64 (cbrt.f64 (exp.f64 (tan.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (tan.f64 b)))) (log.f64 (sqrt.f64 (exp.f64 (tan.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (tan.f64 b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 b) (/.f64 1 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (tan.f64 b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (tan.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (cbrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (tan.f64 b)) (cbrt.f64 (pow.f64 (tan.f64 b) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (tan.f64 b) 2)) (cbrt.f64 (tan.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 b)) (*.f64 (sqrt.f64 (sin.f64 b)) (/.f64 1 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (tan.f64 b)) (sqrt.f64 (tan.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (neg.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cos.f64 b)) (sin.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 b)) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) 1) (/.f64 (sqrt.f64 (sin.f64 b)) (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) -2) (/.f64 (sin.f64 b) (cbrt.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (tan.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 b)) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (/.f64 (sqrt.f64 (sin.f64 b)) (cbrt.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 b) -1/2) (/.f64 (sin.f64 b) (sqrt.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (sqrt.f64 (cos.f64 b))) (/.f64 (cbrt.f64 (sin.f64 b)) (sqrt.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (tan.f64 b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (tan.f64 b) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (tan.f64 b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (tan.f64 b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (tan.f64 b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (tan.f64 b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (tan.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 1 (tan.f64 b)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (tan.f64 b))) 2)) (cbrt.f64 (log.f64 (tan.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (tan.f64 b)))) (sqrt.f64 (log.f64 (tan.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 b) (neg.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (tan.f64 b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (tan.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (tan.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (tan.f64 b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (tan.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (tan.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (tan.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (tan.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (tan.f64 b))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (tan.f64 b))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (tan.f64 b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (tan.f64 b))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (tan.f64 b)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 b)) 1) (log.f64 (cos.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sin.f64 b)) (*.f64 (log.f64 (cos.f64 b)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 b)) 1) (*.f64 (log.f64 (cos.f64 b)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sin.f64 b)) (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 b)) 1) (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 b)) 1) (neg.f64 (log.f64 (cos.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (neg.f64 (log.f64 (cos.f64 b))) (*.f64 (log.f64 (sin.f64 b)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x tan.f64 b)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (tan.f64 b) r))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (tan.f64 b) r))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (tan.f64 b) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (tan.f64 b) r)))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (tan.f64 b) r)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (tan.f64 b) r))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 r (/.f64 1 (tan.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 b) r)) (neg.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) 1) (cos.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (pow.f64 (cbrt.f64 (cos.f64 b)) 2)) (cbrt.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 b) r) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 b)) r) (neg.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 r (neg.f64 (sin.f64 b))) (neg.f64 (cos.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (tan.f64 b) r) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (tan.f64 b) r) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (tan.f64 b) r)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 b) (*.f64 (sin.f64 b) r)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (tan.f64 b) r))) 2)) (cbrt.f64 (log.f64 (*.f64 (tan.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (tan.f64 b) r)))) (sqrt.f64 (log.f64 (*.f64 (tan.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (tan.f64 b) r) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (tan.f64 b) r))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (tan.f64 b) r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (tan.f64 b) r)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (tan.f64 b) r))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (tan.f64 b) r))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (tan.f64 b) r))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (tan.f64 b) r)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 r) 1) (neg.f64 (log.f64 (tan.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 b) r)) (*.f64 (log.f64 (cos.f64 b)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 b) r)) (*.f64 (*.f64 3 (log.f64 (cos.f64 b))) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (tan.f64 b)) 1) (log.f64 r)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (tan.f64 b)) (*.f64 (log.f64 r) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (tan.f64 b)) 1) (*.f64 (log.f64 r) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 r) 1) (log.f64 (tan.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 r) (*.f64 (log.f64 (tan.f64 b)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 r) 1) (*.f64 (log.f64 (tan.f64 b)) 1)))))))

simplify66.0ms (0.4%)

Algorithm
egg-herbie
Rules
646×unsub-neg_binary64
532×associate-+l+_binary64
415×associate-+r+_binary64
384×fma-def_binary64
337×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
080595
1209561
2587526
32349522
46783522
Stop Event
node limit
Counts
239 → 217
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -3 (pow.f64 b 2)))
(+.f64 (*.f64 4 (pow.f64 b 4)) (+.f64 1 (*.f64 -3 (pow.f64 b 2))))
(+.f64 (*.f64 4 (pow.f64 b 4)) (+.f64 1 (+.f64 (*.f64 -3 (pow.f64 b 2)) (*.f64 -47/15 (pow.f64 b 6)))))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 b 2)))
(+.f64 (*.f64 1/24 (pow.f64 b 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 b 2))))
(+.f64 (*.f64 1/24 (pow.f64 b 4)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 b 2)) (*.f64 -1/720 (pow.f64 b 6)))))
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
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 (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 (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 (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))
Outputs
1
(+.f64 1 (*.f64 -3 (pow.f64 b 2)))
(+.f64 1 (*.f64 -3 (*.f64 b b)))
(fma.f64 -3 (*.f64 b b) 1)
(+.f64 (*.f64 4 (pow.f64 b 4)) (+.f64 1 (*.f64 -3 (pow.f64 b 2))))
(fma.f64 4 (pow.f64 b 4) (+.f64 1 (*.f64 -3 (*.f64 b b))))
(fma.f64 4 (pow.f64 b 4) (fma.f64 -3 (*.f64 b b) 1))
(fma.f64 -3 (*.f64 b b) (fma.f64 4 (pow.f64 b 4) 1))
(+.f64 (*.f64 4 (pow.f64 b 4)) (+.f64 1 (+.f64 (*.f64 -3 (pow.f64 b 2)) (*.f64 -47/15 (pow.f64 b 6)))))
(fma.f64 4 (pow.f64 b 4) (+.f64 1 (fma.f64 -3 (*.f64 b b) (*.f64 -47/15 (pow.f64 b 6)))))
(+.f64 (fma.f64 4 (pow.f64 b 4) (fma.f64 -3 (*.f64 b b) 1)) (*.f64 -47/15 (pow.f64 b 6)))
(fma.f64 4 (pow.f64 b 4) (fma.f64 -3 (*.f64 b b) (fma.f64 -47/15 (pow.f64 b 6) 1)))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 b 2)))
(+.f64 1 (*.f64 (*.f64 b b) -1/2))
(fma.f64 (*.f64 b b) -1/2 1)
(fma.f64 b (*.f64 b -1/2) 1)
(+.f64 (*.f64 1/24 (pow.f64 b 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 b 2))))
(fma.f64 1/24 (pow.f64 b 4) (+.f64 1 (*.f64 (*.f64 b b) -1/2)))
(fma.f64 (pow.f64 b 4) 1/24 (fma.f64 (*.f64 b b) -1/2 1))
(fma.f64 (pow.f64 b 4) 1/24 (fma.f64 b (*.f64 b -1/2) 1))
(+.f64 (*.f64 1/24 (pow.f64 b 4)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 b 2)) (*.f64 -1/720 (pow.f64 b 6)))))
(fma.f64 1/24 (pow.f64 b 4) (+.f64 1 (fma.f64 -1/2 (*.f64 b b) (*.f64 (pow.f64 b 6) -1/720))))
(+.f64 (fma.f64 (*.f64 b b) -1/2 (*.f64 (pow.f64 b 6) -1/720)) (fma.f64 (pow.f64 b 4) 1/24 1))
(fma.f64 (pow.f64 b 4) 1/24 (fma.f64 b (*.f64 b -1/2) (fma.f64 (pow.f64 b 6) -1/720 1)))
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
(cos.f64 b)
b
(+.f64 (*.f64 1/3 (pow.f64 b 3)) b)
(fma.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))
(fma.f64 2/15 (pow.f64 b 5) (fma.f64 1/3 (pow.f64 b 3) b))
(fma.f64 1/3 (pow.f64 b 3) (fma.f64 2/15 (pow.f64 b 5) 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)))))
(fma.f64 2/15 (pow.f64 b 5) (+.f64 (fma.f64 1/3 (pow.f64 b 3) b) (*.f64 17/315 (pow.f64 b 7))))
(fma.f64 2/15 (pow.f64 b 5) (fma.f64 1/3 (pow.f64 b 3) (fma.f64 17/315 (pow.f64 b 7) b)))
(fma.f64 1/3 (pow.f64 b 3) (fma.f64 2/15 (pow.f64 b 5) (fma.f64 17/315 (pow.f64 b 7) b)))
(/.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 (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 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(*.f64 r b)
(*.f64 b r)
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 r) (*.f64 -1/2 r)) (pow.f64 b 3)) (*.f64 r b))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (*.f64 b r))
(fma.f64 b r (*.f64 (pow.f64 b 3) (*.f64 1/3 r)))
(*.f64 r (fma.f64 1/3 (pow.f64 b 3) b))
(*.f64 (fma.f64 1/3 (pow.f64 b 3) b) 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))))))))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (fma.f64 r b (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (fma.f64 1/24 r (*.f64 -1/2 (*.f64 r 1/3)))))))
(fma.f64 (pow.f64 b 3) (*.f64 1/3 r) (fma.f64 b r (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r -1/30) (*.f64 r -1/6)))))
(fma.f64 (pow.f64 b 5) (*.f64 r 2/15) (*.f64 r (fma.f64 1/3 (pow.f64 b 3) b)))
(fma.f64 (pow.f64 b 5) (*.f64 2/15 r) (*.f64 (fma.f64 1/3 (pow.f64 b 3) b) 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)))))))))
(fma.f64 (*.f64 r 1/3) (pow.f64 b 3) (fma.f64 (-.f64 (*.f64 r -1/5040) (fma.f64 -1/2 (-.f64 (*.f64 r 1/120) (fma.f64 1/24 r (*.f64 -1/2 (*.f64 r 1/3)))) (fma.f64 -1/720 r (*.f64 1/24 (*.f64 r 1/3))))) (pow.f64 b 7) (fma.f64 r b (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r 1/120) (fma.f64 1/24 r (*.f64 -1/2 (*.f64 r 1/3))))))))
(fma.f64 (pow.f64 b 3) (*.f64 1/3 r) (fma.f64 (pow.f64 b 7) (-.f64 (*.f64 r -1/5040) (fma.f64 -1/2 (-.f64 (*.f64 r -1/30) (*.f64 r -1/6)) (fma.f64 -1/720 r (*.f64 r 1/72)))) (fma.f64 b r (*.f64 (pow.f64 b 5) (-.f64 (*.f64 r -1/30) (*.f64 r -1/6))))))
(fma.f64 (pow.f64 b 7) (-.f64 (*.f64 r -1/5040) (fma.f64 -1/2 (*.f64 r 2/15) (*.f64 r 1/80))) (fma.f64 (pow.f64 b 5) (*.f64 r 2/15) (*.f64 r (fma.f64 1/3 (pow.f64 b 3) b))))
(fma.f64 (pow.f64 b 7) (+.f64 (*.f64 -1/2 (*.f64 r -2/15)) (*.f64 r -4/315)) (fma.f64 (pow.f64 b 5) (*.f64 2/15 r) (*.f64 (fma.f64 1/3 (pow.f64 b 3) b) r)))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)

eval555.0ms (3%)

Compiler

Compiled 21433 to 7515 computations (64.9% saved)

prune289.0ms (1.6%)

Pruning

91 alts after pruning (84 fresh and 7 done)

PrunedKeptTotal
New984471031
Fresh283765
Picked101
Done279
Total1015911106
Error
0.0b
Counts
1106 → 91
Alt Table
Click to see full alt table
StatusErrorProgram
46.3b
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
15.0b
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3) r)
14.2b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
0.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
0.3b
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
30.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
47.8b
(exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 b) r)) (*.f64 (log.f64 (cos.f64 b)) 1)))
23.2b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b))) r)
45.0b
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))))
53.1b
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
25.2b
(pow.f64 (/.f64 1 (*.f64 (tan.f64 b) r)) -1)
24.7b
(*.f64 (tan.f64 b) r)
14.9b
(pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 3)
0.3b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))) r)
53.7b
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r))) (neg.f64 (cos.f64 (+.f64 b a))))
49.3b
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 1 (*.f64 r r))))
30.6b
(*.f64 r (/.f64 b (cos.f64 a)))
1.0b
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 3))) r)
44.8b
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)) 3/2))
28.1b
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)
14.3b
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
52.8b
(/.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 b))) r) (neg.f64 (cos.f64 (+.f64 b a))))
53.1b
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
28.1b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))))
51.6b
(/.f64 (sin.f64 b) (sqrt.f64 (exp.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))))))
40.7b
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
54.0b
(*.f64 (/.f64 (neg.f64 r) (cos.f64 a)) b)
38.9b
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3)
14.8b
(*.f64 r (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (cos.f64 (+.f64 b a))))
25.3b
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 3))
44.0b
(exp.f64 (log.f64 (*.f64 (tan.f64 b) r)))
0.4b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 3))) r)
54.1b
(/.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 b) r) 3) 1/3) (neg.f64 (cos.f64 (+.f64 b a))))
26.3b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
25.3b
(pow.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) 3)
24.8b
(/.f64 r (/.f64 1 (tan.f64 b)))
41.5b
(*.f64 r (-.f64 (exp.f64 (log1p.f64 (tan.f64 b))) 1))
38.7b
(/.f64 (sin.f64 b) (/.f64 1 r))
47.4b
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) r)
24.8b
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
46.1b
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)))
25.1b
(/.f64 (sin.f64 b) (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 3) r))
0.4b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) r)
30.7b
(/.f64 r (/.f64 (cos.f64 a) b))
53.1b
(/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3) (neg.f64 (cos.f64 (+.f64 b a))))
53.3b
(*.f64 r (-.f64 (+.f64 1 (/.f64 b (cos.f64 a))) 1))
49.6b
(pow.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3) 1/3)
0.5b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 3))))
52.8b
(/.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) r) (neg.f64 (cos.f64 (+.f64 b a))))
46.3b
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (cos.f64 b) r))) 3)))
0.3b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) 1))) r)
51.4b
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 a)))
38.7b
(-.f64 (+.f64 1 (*.f64 r (tan.f64 b))) 1)
0.3b
(*.f64 (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))))) r)
28.2b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 a) 3))))
0.3b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
21.0b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) a))) r)
41.4b
(*.f64 r b)
24.8b
(*.f64 r (*.f64 (/.f64 1 (cos.f64 b)) (sin.f64 b)))
28.6b
(*.f64 r (/.f64 b (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
24.8b
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
26.7b
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))) r)
42.3b
(*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b)
14.2b
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
58.4b
(/.f64 (*.f64 r 6) (pow.f64 a 3))
44.0b
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (tan.f64 b) r))) 1/3))
42.6b
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r)))
31.1b
(+.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))))))
46.4b
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (cos.f64 b) r))) 1/3)))
49.0b
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 1 r) 2)))
53.1b
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
46.3b
(/.f64 (sin.f64 b) (pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r)))))
45.5b
(*.f64 r (*.f64 (/.f64 (sqrt.f64 b) 1) (/.f64 (sqrt.f64 b) (cos.f64 a))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
33.9b
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 a) 6)))))
38.7b
(*.f64 (sin.f64 b) r)
30.8b
(*.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a)))) r)
24.8b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
25.3b
(/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (/.f64 (cos.f64 b) r))
0.7b
(*.f64 (/.f64 (sin.f64 b) (log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (exp.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))) r)
52.1b
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
0.3b
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))) r)
53.1b
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
36.8b
(*.f64 r (log.f64 (exp.f64 (tan.f64 b))))
14.2b
(*.f64 r (/.f64 (log1p.f64 (expm1.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
36.9b
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
42.0b
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b)) r)
25.3b
(*.f64 r (log1p.f64 (expm1.f64 (tan.f64 b))))
37.0b
(*.f64 r (/.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) (cos.f64 (+.f64 b a))))
0.3b
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))) r)
14.1b
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))) r)
Compiler

Compiled 1474 to 1031 computations (30.1% saved)

regimes2.2s (12.1%)

Counts
194 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (tan.f64 b) r)
(*.f64 (tan.f64 b) r)
(*.f64 (sin.f64 b) r)
(/.f64 r (/.f64 1 (tan.f64 b)))
(/.f64 (sin.f64 b) (/.f64 1 r))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 r (/.f64 (cos.f64 a) b))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(*.f64 (/.f64 r (cos.f64 a)) b)
(*.f64 (/.f64 (neg.f64 r) (cos.f64 a)) b)
(/.f64 (*.f64 r 6) (pow.f64 a 3))
(*.f64 r (/.f64 6 (pow.f64 a 3)))
(-.f64 (+.f64 1 (*.f64 r (tan.f64 b))) 1)
(/.f64 1 (/.f64 (cos.f64 a) (*.f64 b r)))
(*.f64 r (/.f64 b (cos.f64 (+.f64 b a))))
(*.f64 r (*.f64 (+.f64 (*.f64 b a) 1) (sin.f64 b)))
(*.f64 r (-.f64 (+.f64 1 (/.f64 b (cos.f64 a))) 1))
(-.f64 (+.f64 1 (*.f64 (/.f64 b (cos.f64 a)) r)) 1)
(*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(pow.f64 (/.f64 1 (*.f64 (tan.f64 b) r)) -1)
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 a)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
(pow.f64 (/.f64 1 (*.f64 r (tan.f64 b))) -1)
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 1 (*.f64 r r))))
(*.f64 r (*.f64 (/.f64 1 (cos.f64 b)) (sin.f64 b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 b a))))
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (cos.f64 b)) (/.f64 (sin.f64 b) (/.f64 1 r)))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 b (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))
(*.f64 r (*.f64 (sin.f64 b) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) b) (cos.f64 (+.f64 b a))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b)) r)
(exp.f64 (log.f64 (*.f64 (tan.f64 b) r)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r)))
(*.f64 r (log.f64 (exp.f64 (tan.f64 b))))
(*.f64 r (log1p.f64 (expm1.f64 (tan.f64 b))))
(exp.f64 (log.f64 (*.f64 r (tan.f64 b))))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3)
(pow.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) 3)
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) r)
(sqrt.f64 (pow.f64 (*.f64 r (tan.f64 b)) 2))
(pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 3)
(*.f64 r (-.f64 (exp.f64 (log1p.f64 (tan.f64 b))) 1))
(pow.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 r (tan.f64 b)) 3) 1/3)
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 1 r) 2)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (tan.f64 b) r))) 1/3))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 r (*.f64 (/.f64 (sqrt.f64 b) 1) (/.f64 (sqrt.f64 b) (cos.f64 a))))
(*.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 a (sin.f64 b)))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))) r)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
(/.f64 (log.f64 (exp.f64 (sin.f64 b))) (/.f64 (cos.f64 b) r))
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)))
(/.f64 (sin.f64 b) (/.f64 (cbrt.f64 (pow.f64 (cos.f64 b) 3)) r))
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 3))
(/.f64 (sin.f64 b) (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 3) r))
(/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (/.f64 (cos.f64 b) r))
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))
(/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (/.f64 (cos.f64 b) r))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 b) 3))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 a) 3))))
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (log.f64 (exp.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (exp.f64 (log.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (log1p.f64 (expm1.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (expm1.f64 (log1p.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))))
(pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 3)
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r))) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 b))) r) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3) r)
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
(*.f64 r (/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
(*.f64 r (/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (cos.f64 b) r))) 1/3)))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
(*.f64 r (/.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) (cos.f64 (+.f64 b a))))
(/.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 b) r) 3) 1/3) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) r) (neg.f64 (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b))) r)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) a))) r)
(*.f64 r (log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6)))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 a) 6)))))
(exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 b) r)) (*.f64 (log.f64 (cos.f64 b)) 1)))
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)) 3/2))
(/.f64 (sin.f64 b) (sqrt.f64 (exp.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))))))
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (cos.f64 b) r))) 3)))
(/.f64 (sin.f64 b) (pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 2) (cbrt.f64 (*.f64 r (tan.f64 b))))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))
(exp.f64 (*.f64 3 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) 3/2)))
(exp.f64 (*.f64 1/3 (log.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (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) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(*.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))) r)
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))) r)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 3))) r)
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))) 3))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))) r)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) 1))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) 3))) r)
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a))) 3))))
(*.f64 (/.f64 (sin.f64 b) (log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (exp.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))) r)
(*.f64 r (/.f64 (sin.f64 b) (log.f64 (/.f64 (exp.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (*.f64 (cos.f64 a) (sqrt.f64 (cos.f64 b))) (sqrt.f64 (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))) r)
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 a)) 2) (*.f64 (cbrt.f64 (cos.f64 a)) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))) r)
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (sqrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))
(*.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (sin.f64 b) (cos.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a)))) r)
(*.f64 r (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (/.f64 -1/2 (/.f64 (cos.f64 b) (sin.f64 b))) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a)))))
(*.f64 r (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (-.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (-.f64 (*.f64 (/.f64 -1/2 (cos.f64 b)) (sin.f64 b)) (pow.f64 (/.f64 (sin.f64 b) (cos.f64 b)) 3)) a)))))
(*.f64 (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 a) (cos.f64 b)) 2) (*.f64 (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a))))) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))))) r)
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (*.f64 (cos.f64 b) (pow.f64 (cbrt.f64 (cos.f64 a)) 2)) (cbrt.f64 (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 2) (*.f64 (cbrt.f64 (cos.f64 b)) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1))) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) -1)))))
(*.f64 r (/.f64 (sin.f64 b) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 3) (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 b) (cos.f64 a)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 2) (*.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a))) (sqrt.f64 (sin.f64 b)) (*.f64 (*.f64 (sqrt.f64 (sin.f64 b)) (sin.f64 a)) (sqrt.f64 (sin.f64 b)))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a))) (pow.f64 (cbrt.f64 (sin.f64 b)) 2) (*.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (sin.f64 a)) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 b) (cos.f64 a) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 1 (*.f64 (cos.f64 b) (cos.f64 a)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.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 (*.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 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) 2) (cbrt.f64 (*.f64 (cos.f64 b) (cos.f64 a))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 2))))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
Calls

5 calls:

872.0ms
r
392.0ms
a
322.0ms
b
295.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
234.0ms
(/.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 2922 to 1011 computations (65.4% saved)

regimes979.0ms (5.3%)

Counts
161 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (tan.f64 b) r)
(*.f64 (tan.f64 b) r)
(*.f64 (sin.f64 b) r)
(/.f64 r (/.f64 1 (tan.f64 b)))
(/.f64 (sin.f64 b) (/.f64 1 r))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 r (/.f64 (cos.f64 a) b))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(*.f64 (/.f64 r (cos.f64 a)) b)
(*.f64 (/.f64 (neg.f64 r) (cos.f64 a)) b)
(/.f64 (*.f64 r 6) (pow.f64 a 3))
(*.f64 r (/.f64 6 (pow.f64 a 3)))
(-.f64 (+.f64 1 (*.f64 r (tan.f64 b))) 1)
(/.f64 1 (/.f64 (cos.f64 a) (*.f64 b r)))
(*.f64 r (/.f64 b (cos.f64 (+.f64 b a))))
(*.f64 r (*.f64 (+.f64 (*.f64 b a) 1) (sin.f64 b)))
(*.f64 r (-.f64 (+.f64 1 (/.f64 b (cos.f64 a))) 1))
(-.f64 (+.f64 1 (*.f64 (/.f64 b (cos.f64 a)) r)) 1)
(*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(pow.f64 (/.f64 1 (*.f64 (tan.f64 b) r)) -1)
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 a)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
(pow.f64 (/.f64 1 (*.f64 r (tan.f64 b))) -1)
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 1 (*.f64 r r))))
(*.f64 r (*.f64 (/.f64 1 (cos.f64 b)) (sin.f64 b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 b a))))
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (cos.f64 b)) (/.f64 (sin.f64 b) (/.f64 1 r)))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 b (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))
(*.f64 r (*.f64 (sin.f64 b) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) b) (cos.f64 (+.f64 b a))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b)) r)
(exp.f64 (log.f64 (*.f64 (tan.f64 b) r)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r)))
(*.f64 r (log.f64 (exp.f64 (tan.f64 b))))
(*.f64 r (log1p.f64 (expm1.f64 (tan.f64 b))))
(exp.f64 (log.f64 (*.f64 r (tan.f64 b))))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3)
(pow.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) 3)
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) r)
(sqrt.f64 (pow.f64 (*.f64 r (tan.f64 b)) 2))
(pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 3)
(*.f64 r (-.f64 (exp.f64 (log1p.f64 (tan.f64 b))) 1))
(pow.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 r (tan.f64 b)) 3) 1/3)
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 1 r) 2)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (tan.f64 b) r))) 1/3))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 r (*.f64 (/.f64 (sqrt.f64 b) 1) (/.f64 (sqrt.f64 b) (cos.f64 a))))
(*.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 a (sin.f64 b)))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))) r)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
(/.f64 (log.f64 (exp.f64 (sin.f64 b))) (/.f64 (cos.f64 b) r))
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)))
(/.f64 (sin.f64 b) (/.f64 (cbrt.f64 (pow.f64 (cos.f64 b) 3)) r))
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 3))
(/.f64 (sin.f64 b) (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 3) r))
(/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (/.f64 (cos.f64 b) r))
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))
(/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (/.f64 (cos.f64 b) r))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 b) 3))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 a) 3))))
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (log.f64 (exp.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (exp.f64 (log.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (log1p.f64 (expm1.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (expm1.f64 (log1p.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))))
(pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 3)
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r))) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 b))) r) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3) r)
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
(*.f64 r (/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
(*.f64 r (/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (cos.f64 b) r))) 1/3)))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
(*.f64 r (/.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) (cos.f64 (+.f64 b a))))
(/.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 b) r) 3) 1/3) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) r) (neg.f64 (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b))) r)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) a))) r)
(*.f64 r (log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6)))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 a) 6)))))
(exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 b) r)) (*.f64 (log.f64 (cos.f64 b)) 1)))
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)) 3/2))
(/.f64 (sin.f64 b) (sqrt.f64 (exp.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))))))
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (cos.f64 b) r))) 3)))
(/.f64 (sin.f64 b) (pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 2) (cbrt.f64 (*.f64 r (tan.f64 b))))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))
(exp.f64 (*.f64 3 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) 3/2)))
(exp.f64 (*.f64 1/3 (log.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (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) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(*.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))) r)
Outputs
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))) r)
Calls

5 calls:

188.0ms
b
176.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
163.0ms
a
122.0ms
r
119.0ms
(/.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 1778 to 641 computations (63.9% saved)

regimes717.0ms (3.9%)

Counts
160 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (tan.f64 b) r)
(*.f64 (tan.f64 b) r)
(*.f64 (sin.f64 b) r)
(/.f64 r (/.f64 1 (tan.f64 b)))
(/.f64 (sin.f64 b) (/.f64 1 r))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 r (/.f64 (cos.f64 a) b))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(*.f64 (/.f64 r (cos.f64 a)) b)
(*.f64 (/.f64 (neg.f64 r) (cos.f64 a)) b)
(/.f64 (*.f64 r 6) (pow.f64 a 3))
(*.f64 r (/.f64 6 (pow.f64 a 3)))
(-.f64 (+.f64 1 (*.f64 r (tan.f64 b))) 1)
(/.f64 1 (/.f64 (cos.f64 a) (*.f64 b r)))
(*.f64 r (/.f64 b (cos.f64 (+.f64 b a))))
(*.f64 r (*.f64 (+.f64 (*.f64 b a) 1) (sin.f64 b)))
(*.f64 r (-.f64 (+.f64 1 (/.f64 b (cos.f64 a))) 1))
(-.f64 (+.f64 1 (*.f64 (/.f64 b (cos.f64 a)) r)) 1)
(*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(pow.f64 (/.f64 1 (*.f64 (tan.f64 b) r)) -1)
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 a)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
(pow.f64 (/.f64 1 (*.f64 r (tan.f64 b))) -1)
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 1 (*.f64 r r))))
(*.f64 r (*.f64 (/.f64 1 (cos.f64 b)) (sin.f64 b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 b a))))
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (cos.f64 b)) (/.f64 (sin.f64 b) (/.f64 1 r)))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 b (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))
(*.f64 r (*.f64 (sin.f64 b) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) b) (cos.f64 (+.f64 b a))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b)) r)
(exp.f64 (log.f64 (*.f64 (tan.f64 b) r)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r)))
(*.f64 r (log.f64 (exp.f64 (tan.f64 b))))
(*.f64 r (log1p.f64 (expm1.f64 (tan.f64 b))))
(exp.f64 (log.f64 (*.f64 r (tan.f64 b))))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3)
(pow.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) 3)
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) r)
(sqrt.f64 (pow.f64 (*.f64 r (tan.f64 b)) 2))
(pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 3)
(*.f64 r (-.f64 (exp.f64 (log1p.f64 (tan.f64 b))) 1))
(pow.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 r (tan.f64 b)) 3) 1/3)
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 1 r) 2)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (tan.f64 b) r))) 1/3))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 r (*.f64 (/.f64 (sqrt.f64 b) 1) (/.f64 (sqrt.f64 b) (cos.f64 a))))
(*.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 a (sin.f64 b)))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))) r)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
(/.f64 (log.f64 (exp.f64 (sin.f64 b))) (/.f64 (cos.f64 b) r))
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)))
(/.f64 (sin.f64 b) (/.f64 (cbrt.f64 (pow.f64 (cos.f64 b) 3)) r))
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 3))
(/.f64 (sin.f64 b) (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 3) r))
(/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (/.f64 (cos.f64 b) r))
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))
(/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (/.f64 (cos.f64 b) r))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 b) 3))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 a) 3))))
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (log.f64 (exp.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (exp.f64 (log.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (log1p.f64 (expm1.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (expm1.f64 (log1p.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))))
(pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 3)
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r))) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 b))) r) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3) r)
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
(*.f64 r (/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
(*.f64 r (/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (cos.f64 b) r))) 1/3)))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
(*.f64 r (/.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) (cos.f64 (+.f64 b a))))
(/.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 b) r) 3) 1/3) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) r) (neg.f64 (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b))) r)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) a))) r)
(*.f64 r (log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6)))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 a) 6)))))
(exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 b) r)) (*.f64 (log.f64 (cos.f64 b)) 1)))
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)) 3/2))
(/.f64 (sin.f64 b) (sqrt.f64 (exp.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))))))
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (cos.f64 b) r))) 3)))
(/.f64 (sin.f64 b) (pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 2) (cbrt.f64 (*.f64 r (tan.f64 b))))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))
(exp.f64 (*.f64 3 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) 3/2)))
(exp.f64 (*.f64 1/3 (log.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (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) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(*.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 -1 (*.f64 (sin.f64 a) (sin.f64 b))) (*.f64 (cos.f64 a) (cos.f64 b))))
Outputs
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
Calls

5 calls:

151.0ms
r
142.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
132.0ms
a
106.0ms
b
101.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 1762 to 637 computations (63.8% saved)

regimes691.0ms (3.7%)

Counts
157 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (tan.f64 b) r)
(*.f64 (tan.f64 b) r)
(*.f64 (sin.f64 b) r)
(/.f64 r (/.f64 1 (tan.f64 b)))
(/.f64 (sin.f64 b) (/.f64 1 r))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 r (/.f64 (cos.f64 a) b))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(*.f64 (/.f64 r (cos.f64 a)) b)
(*.f64 (/.f64 (neg.f64 r) (cos.f64 a)) b)
(/.f64 (*.f64 r 6) (pow.f64 a 3))
(*.f64 r (/.f64 6 (pow.f64 a 3)))
(-.f64 (+.f64 1 (*.f64 r (tan.f64 b))) 1)
(/.f64 1 (/.f64 (cos.f64 a) (*.f64 b r)))
(*.f64 r (/.f64 b (cos.f64 (+.f64 b a))))
(*.f64 r (*.f64 (+.f64 (*.f64 b a) 1) (sin.f64 b)))
(*.f64 r (-.f64 (+.f64 1 (/.f64 b (cos.f64 a))) 1))
(-.f64 (+.f64 1 (*.f64 (/.f64 b (cos.f64 a)) r)) 1)
(*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(pow.f64 (/.f64 1 (*.f64 (tan.f64 b) r)) -1)
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 a)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
(pow.f64 (/.f64 1 (*.f64 r (tan.f64 b))) -1)
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 1 (*.f64 r r))))
(*.f64 r (*.f64 (/.f64 1 (cos.f64 b)) (sin.f64 b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 b a))))
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (cos.f64 b)) (/.f64 (sin.f64 b) (/.f64 1 r)))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 b (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))
(*.f64 r (*.f64 (sin.f64 b) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) b) (cos.f64 (+.f64 b a))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b)) r)
(exp.f64 (log.f64 (*.f64 (tan.f64 b) r)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r)))
(*.f64 r (log.f64 (exp.f64 (tan.f64 b))))
(*.f64 r (log1p.f64 (expm1.f64 (tan.f64 b))))
(exp.f64 (log.f64 (*.f64 r (tan.f64 b))))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3)
(pow.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) 3)
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) r)
(sqrt.f64 (pow.f64 (*.f64 r (tan.f64 b)) 2))
(pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 3)
(*.f64 r (-.f64 (exp.f64 (log1p.f64 (tan.f64 b))) 1))
(pow.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 r (tan.f64 b)) 3) 1/3)
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 1 r) 2)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (tan.f64 b) r))) 1/3))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 r (*.f64 (/.f64 (sqrt.f64 b) 1) (/.f64 (sqrt.f64 b) (cos.f64 a))))
(*.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 a (sin.f64 b)))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))) r)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
(/.f64 (log.f64 (exp.f64 (sin.f64 b))) (/.f64 (cos.f64 b) r))
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)))
(/.f64 (sin.f64 b) (/.f64 (cbrt.f64 (pow.f64 (cos.f64 b) 3)) r))
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 3))
(/.f64 (sin.f64 b) (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 3) r))
(/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (/.f64 (cos.f64 b) r))
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))
(/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (/.f64 (cos.f64 b) r))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 b) 3))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 a) 3))))
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (log.f64 (exp.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (exp.f64 (log.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (log1p.f64 (expm1.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (expm1.f64 (log1p.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))))
(pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 3)
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r))) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 b))) r) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3) r)
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
(*.f64 r (/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
(*.f64 r (/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (cos.f64 b) r))) 1/3)))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
(*.f64 r (/.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) (cos.f64 (+.f64 b a))))
(/.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 b) r) 3) 1/3) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) r) (neg.f64 (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b))) r)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) a))) r)
(*.f64 r (log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6)))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 a) 6)))))
(exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 b) r)) (*.f64 (log.f64 (cos.f64 b)) 1)))
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)) 3/2))
(/.f64 (sin.f64 b) (sqrt.f64 (exp.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))))))
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (cos.f64 b) r))) 3)))
(/.f64 (sin.f64 b) (pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 2) (cbrt.f64 (*.f64 r (tan.f64 b))))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))
(exp.f64 (*.f64 3 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) 3/2)))
(exp.f64 (*.f64 1/3 (log.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
Outputs
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
Calls

5 calls:

148.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
123.0ms
r
117.0ms
a
104.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
91.0ms
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 1712 to 626 computations (63.4% saved)

regimes635.0ms (3.4%)

Counts
155 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (tan.f64 b) r)
(*.f64 (tan.f64 b) r)
(*.f64 (sin.f64 b) r)
(/.f64 r (/.f64 1 (tan.f64 b)))
(/.f64 (sin.f64 b) (/.f64 1 r))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 r (/.f64 (cos.f64 a) b))
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 r (/.f64 b (cos.f64 a)))
(*.f64 (/.f64 r (cos.f64 a)) b)
(*.f64 (/.f64 (neg.f64 r) (cos.f64 a)) b)
(/.f64 (*.f64 r 6) (pow.f64 a 3))
(*.f64 r (/.f64 6 (pow.f64 a 3)))
(-.f64 (+.f64 1 (*.f64 r (tan.f64 b))) 1)
(/.f64 1 (/.f64 (cos.f64 a) (*.f64 b r)))
(*.f64 r (/.f64 b (cos.f64 (+.f64 b a))))
(*.f64 r (*.f64 (+.f64 (*.f64 b a) 1) (sin.f64 b)))
(*.f64 r (-.f64 (+.f64 1 (/.f64 b (cos.f64 a))) 1))
(-.f64 (+.f64 1 (*.f64 (/.f64 b (cos.f64 a)) r)) 1)
(*.f64 (/.f64 r (fma.f64 -1/2 (*.f64 a a) 1)) b)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 a)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 b)))
(pow.f64 (/.f64 1 (*.f64 (tan.f64 b) r)) -1)
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 a)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (neg.f64 r))
(pow.f64 (/.f64 1 (*.f64 r (tan.f64 b))) -1)
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 1 (*.f64 r r))))
(*.f64 r (*.f64 (/.f64 1 (cos.f64 b)) (sin.f64 b)))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 b a)))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
(/.f64 (neg.f64 (sin.f64 b)) (/.f64 (cos.f64 (+.f64 b a)) r))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cos.f64 (+.f64 b a))))
(*.f64 r (neg.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 1 (cos.f64 b)) (/.f64 (sin.f64 b) (/.f64 1 r)))
(*.f64 (neg.f64 (sin.f64 b)) (/.f64 1 (/.f64 (neg.f64 (cos.f64 b)) r)))
(*.f64 (/.f64 (sin.f64 b) 1) (/.f64 r (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 b (-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))))
(/.f64 1 (/.f64 (cos.f64 (+.f64 b a)) (*.f64 (sin.f64 b) r)))
(*.f64 r (*.f64 (sin.f64 b) (/.f64 1 (neg.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) b) (cos.f64 (+.f64 b a))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 b 3)) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b)) r)
(exp.f64 (log.f64 (*.f64 (tan.f64 b) r)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r)))
(*.f64 r (log.f64 (exp.f64 (tan.f64 b))))
(*.f64 r (log1p.f64 (expm1.f64 (tan.f64 b))))
(exp.f64 (log.f64 (*.f64 r (tan.f64 b))))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3)
(pow.f64 (cbrt.f64 (*.f64 (tan.f64 b) r)) 3)
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) r)
(sqrt.f64 (pow.f64 (*.f64 r (tan.f64 b)) 2))
(pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 3)
(*.f64 r (-.f64 (exp.f64 (log1p.f64 (tan.f64 b))) 1))
(pow.f64 (pow.f64 (*.f64 (tan.f64 b) r) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 r (tan.f64 b)) 3) 1/3)
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 1 r) 2)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (tan.f64 b) r))) 1/3))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))))
(*.f64 r (*.f64 (/.f64 (sqrt.f64 b) 1) (/.f64 (sqrt.f64 b) (cos.f64 a))))
(*.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 a (sin.f64 b)))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))) r)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 a (sin.f64 b)))))
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
(/.f64 (log.f64 (exp.f64 (sin.f64 b))) (/.f64 (cos.f64 b) r))
(/.f64 (sin.f64 b) (exp.f64 (log.f64 (/.f64 (cos.f64 b) r))))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r)))
(/.f64 (sin.f64 b) (/.f64 (cbrt.f64 (pow.f64 (cos.f64 b) 3)) r))
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (/.f64 (cos.f64 b) r)) 3))
(/.f64 (sin.f64 b) (/.f64 (pow.f64 (cbrt.f64 (cos.f64 b)) 3) r))
(/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (/.f64 (cos.f64 b) r))
(/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)))
(/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (/.f64 (cos.f64 b) r))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 b) 3))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 a) 3))))
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
(*.f64 (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))) r)
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (log1p.f64 (expm1.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (log1p.f64 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (log.f64 (exp.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (log.f64 (exp.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (sin.f64 b) (log.f64 (exp.f64 (cos.f64 (+.f64 b a))))))
(*.f64 r (/.f64 (exp.f64 (log.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (log1p.f64 (expm1.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (expm1.f64 (log1p.f64 (sin.f64 b))) (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (sqrt.f64 (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r r))))
(pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 (+.f64 b a)) r))) 3)
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 b) r))) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 b))) r) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 b a))))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3) r)
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
(*.f64 r (/.f64 (sqrt.f64 (pow.f64 (sin.f64 b) 2)) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (pow.f64 (cbrt.f64 (sin.f64 b)) 3) (cos.f64 (+.f64 b a))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
(*.f64 r (/.f64 (sin.f64 b) (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2))))
(*.f64 r (pow.f64 (cbrt.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a)))) 3))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)) 3)
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 b a))) 3)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) r)) 3) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (cos.f64 b) r))) 1/3)))
(/.f64 (*.f64 (sin.f64 b) r) (neg.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 3))))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 b a)))) 1)))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3) 1/3)
(*.f64 r (/.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) (cos.f64 (+.f64 b a))))
(/.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 b) r) 3) 1/3) (neg.f64 (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 b))) 1) r) (neg.f64 (cos.f64 (+.f64 b a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) b))) r)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) a))) r)
(*.f64 r (log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (cos.f64 a) (*.f64 b (-.f64 (*.f64 (*.f64 (cos.f64 a) -1/2) b) (sin.f64 a))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 3) 1/6) b)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (-.f64 (*.f64 1/6 (pow.f64 a 3)) a)))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 a a)) 1) (cos.f64 b)) (*.f64 (sin.f64 b) (+.f64 (neg.f64 a) (*.f64 (pow.f64 a 3) 1/6))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (*.f64 (sin.f64 a) (+.f64 (neg.f64 b) (*.f64 1/6 (pow.f64 b 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 b b)) 1) (cos.f64 a)))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 b) 6)))))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 a) 6)))))
(exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 b) r)) (*.f64 (log.f64 (cos.f64 b)) 1)))
(/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (cos.f64 b) r) 2)) 3/2))
(/.f64 (sin.f64 b) (sqrt.f64 (exp.f64 (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r))))))
(/.f64 (sin.f64 b) (exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (cos.f64 b) r))) 3)))
(/.f64 (sin.f64 b) (pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 (/.f64 (cos.f64 b) r)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 r (tan.f64 b))) 2) (cbrt.f64 (*.f64 r (tan.f64 b))))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))
(*.f64 r (/.f64 (sin.f64 b) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 6)))))
(exp.f64 (*.f64 3 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r)))))
(*.f64 r (/.f64 (sin.f64 b) (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 b a)) 2)) 3/2)))
(exp.f64 (*.f64 1/3 (log.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))) r) 3))))
Outputs
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))) r)
Calls

5 calls:

142.0ms
a
117.0ms
b
110.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
89.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
85.0ms
r
Results
ErrorSegmentsBranch
14.1b1r
14.1b1a
14.1b1b
14.1b1(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
14.1b1(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
Compiler

Compiled 1680 to 621 computations (63% saved)

regimes364.0ms (2%)

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

3 calls:

218.0ms
r
81.0ms
a
54.0ms
b
Results
ErrorSegmentsBranch
20.8b6r
14.3b3a
14.0b3b
Compiler

Compiled 277 to 111 computations (59.9% saved)

bsearch255.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
124.0ms
3.021294679179908e-5
0.00011980081113499213
131.0ms
-5875159.686174767
-9.996197408248972e-14
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes258.0ms (1.4%)

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

3 calls:

124.0ms
r
63.0ms
b
60.0ms
a
Results
ErrorSegmentsBranch
21.5b6r
15.2b3a
14.0b3b
Compiler

Compiled 164 to 81 computations (50.6% saved)

bsearch194.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
75.0ms
3.021294679179908e-5
0.00011980081113499213
118.0ms
-5875159.686174767
-9.996197408248972e-14
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes70.0ms (0.4%)

Counts
9 → 3
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (tan.f64 b) r)
(*.f64 (tan.f64 b) r)
(*.f64 (sin.f64 b) r)
(/.f64 r (/.f64 1 (tan.f64 b)))
(/.f64 (sin.f64 b) (/.f64 1 r))
(/.f64 (*.f64 r b) (cos.f64 a))
(/.f64 r (/.f64 (cos.f64 a) b))
(/.f64 (*.f64 b r) (cos.f64 a))
Outputs
(*.f64 (tan.f64 b) r)
(/.f64 r (/.f64 (cos.f64 a) b))
(*.f64 (tan.f64 b) r)
Calls

3 calls:

33.0ms
r
18.0ms
b
17.0ms
a
Results
ErrorSegmentsBranch
21.5b6r
15.2b3a
14.0b3b
Compiler

Compiled 60 to 29 computations (51.7% saved)

bsearch137.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
69.0ms
3.021294679179908e-5
0.00011980081113499213
67.0ms
-9.996197408248972e-14
-1.4548148708090197e-16
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes82.0ms (0.4%)

Counts
7 → 3
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (tan.f64 b) r)
(*.f64 (tan.f64 b) r)
(*.f64 (sin.f64 b) r)
(/.f64 r (/.f64 1 (tan.f64 b)))
(/.f64 (sin.f64 b) (/.f64 1 r))
(/.f64 (*.f64 r b) (cos.f64 a))
Outputs
(*.f64 (tan.f64 b) r)
(/.f64 (*.f64 r b) (cos.f64 a))
(*.f64 (tan.f64 b) r)
Calls

3 calls:

32.0ms
r
15.0ms
a
13.0ms
b
Results
ErrorSegmentsBranch
21.5b6r
15.3b3a
14.0b3b
Compiler

Compiled 48 to 25 computations (47.9% saved)

bsearch153.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
78.0ms
3.021294679179908e-5
0.00011980081113499213
75.0ms
-5875159.686174767
-9.996197408248972e-14
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes18.0ms (0.1%)

Accuracy

Total -16.9b remaining (-68.5%)

Threshold costs -16.9b (-68.5%)

Counts
6 → 1
Calls
Call 1
Inputs
(*.f64 r b)
(*.f64 (tan.f64 b) r)
(*.f64 (tan.f64 b) r)
(*.f64 (sin.f64 b) r)
(/.f64 r (/.f64 1 (tan.f64 b)))
(/.f64 (sin.f64 b) (/.f64 1 r))
Outputs
(*.f64 (tan.f64 b) r)
Calls

3 calls:

7.0ms
a
5.0ms
b
5.0ms
r
Results
ErrorSegmentsBranch
24.7b1r
24.7b1a
24.7b1b
Compiler

Compiled 42 to 23 computations (45.2% saved)

simplify16.0ms (0.1%)

Algorithm
egg-herbie
Rules
16×*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
053262
179262
290262
396262
498262
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))) r)
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))) r)
(if (<=.f64 b -3154202338862281/536870912) (*.f64 (tan.f64 b) r) (if (<=.f64 b 8917287954894747/295147905179352825856) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r) (*.f64 (tan.f64 b) r)))
(if (<=.f64 b -3154202338862281/536870912) (*.f64 (tan.f64 b) r) (if (<=.f64 b 8917287954894747/295147905179352825856) (*.f64 r (/.f64 b (cos.f64 a))) (*.f64 (tan.f64 b) r)))
(if (<=.f64 b -7919803527854175/79228162514264337593543950336) (*.f64 (tan.f64 b) r) (if (<=.f64 b 8917287954894747/295147905179352825856) (/.f64 r (/.f64 (cos.f64 a) b)) (*.f64 (tan.f64 b) r)))
(if (<=.f64 b -3154202338862281/536870912) (*.f64 (tan.f64 b) r) (if (<=.f64 b 8917287954894747/295147905179352825856) (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 (tan.f64 b) r)))
(*.f64 (tan.f64 b) r)
(*.f64 r b)
Outputs
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 b) (cos.f64 a) (*.f64 (neg.f64 (sin.f64 b)) (sin.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 a) (cos.f64 b)))) r)
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (sin.f64 b) (neg.f64 (sin.f64 a)) (*.f64 (cos.f64 b) (cos.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) r)
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
(*.f64 (sin.f64 b) (/.f64 r (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))) r)
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (-.f64 b a))))
(if (<=.f64 b -3154202338862281/536870912) (*.f64 (tan.f64 b) r) (if (<=.f64 b 8917287954894747/295147905179352825856) (*.f64 (/.f64 (sin.f64 b) (cos.f64 a)) r) (*.f64 (tan.f64 b) r)))
(if (<=.f64 b -3154202338862281/536870912) (*.f64 r (tan.f64 b)) (if (<=.f64 b 8917287954894747/295147905179352825856) (*.f64 r (/.f64 (sin.f64 b) (cos.f64 a))) (*.f64 r (tan.f64 b))))
(if (<=.f64 b -3154202338862281/536870912) (*.f64 (tan.f64 b) r) (if (<=.f64 b 8917287954894747/295147905179352825856) (*.f64 r (/.f64 b (cos.f64 a))) (*.f64 (tan.f64 b) r)))
(if (<=.f64 b -3154202338862281/536870912) (*.f64 r (tan.f64 b)) (if (<=.f64 b 8917287954894747/295147905179352825856) (*.f64 r (/.f64 b (cos.f64 a))) (*.f64 r (tan.f64 b))))
(if (<=.f64 b -7919803527854175/79228162514264337593543950336) (*.f64 (tan.f64 b) r) (if (<=.f64 b 8917287954894747/295147905179352825856) (/.f64 r (/.f64 (cos.f64 a) b)) (*.f64 (tan.f64 b) r)))
(if (<=.f64 b -7919803527854175/79228162514264337593543950336) (*.f64 r (tan.f64 b)) (if (<=.f64 b 8917287954894747/295147905179352825856) (/.f64 r (/.f64 (cos.f64 a) b)) (*.f64 r (tan.f64 b))))
(if (<=.f64 b -3154202338862281/536870912) (*.f64 (tan.f64 b) r) (if (<=.f64 b 8917287954894747/295147905179352825856) (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 (tan.f64 b) r)))
(if (<=.f64 b -3154202338862281/536870912) (*.f64 r (tan.f64 b)) (if (<=.f64 b 8917287954894747/295147905179352825856) (/.f64 (*.f64 r b) (cos.f64 a)) (*.f64 r (tan.f64 b))))
(*.f64 (tan.f64 b) r)
(*.f64 r (tan.f64 b))
(*.f64 r b)
Compiler

Compiled 202 to 122 computations (39.6% saved)

soundness10.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
+-commutative_binary64
associate-*r/_binary64
associate-*l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11314
21714
32114
42214
Stop Event
saturated
Compiler

Compiled 24 to 16 computations (33.3% saved)

end102.0ms (0.6%)

Compiler

Compiled 172 to 61 computations (64.5% saved)

Profiling

Loading profile data...