Details

Time bar (total: 10.5s)

analyze1.6s (15.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
6.2%93.6%0.1%7
9.4%90.5%0.1%8
14%85.8%0.1%9
16.4%83.5%0.1%10
19.1%80.7%0.1%11
20.5%79.4%0.1%12
21.2%78.7%0.1%13
22.7%77.2%0.1%14
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample3.8s (36.4%)

Results
2.4s3606×body1024valid
564.0ms1395×body512valid
409.0ms2466×body128valid
267.0ms204×body2048valid
167.0ms585×body256valid
1.0msbody1024invalid
0.0msbody512invalid
Compiler

Compiled 26 to 18 computations (30.8% saved)

preprocess17.0ms (0.2%)

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 (*.f64 r (sin.f64 b)) (cos.f64 (+.f64 b a)))
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 b a))))
(*.f64 a (/.f64 (sin.f64 b) (cos.f64 (+.f64 r b))))
(/.f64 (*.f64 a (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 (*.f64 b (sin.f64 r)) (cos.f64 (+.f64 r a)))
(*.f64 (/.f64 b (cos.f64 (+.f64 r a))) (sin.f64 r))
(*.f64 (sin.f64 r) (/.f64 b (cos.f64 (+.f64 r a))))
(*.f64 r (/.f64 (sin.f64 a) (cos.f64 (+.f64 b a))))
(/.f64 (*.f64 r (sin.f64 a)) (cos.f64 (+.f64 b a)))
Compiler

Compiled 12 to 8 computations (33.3% saved)

simplify6.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
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))))
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))

prune3.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
14.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
14.4b
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
14.3b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
Compiler

Compiled 69 to 44 computations (36.2% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series20.0ms (0.2%)

Counts
3 → 52
Calls

21 calls:

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

rewrite60.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
588×prod-diff_binary64
214×fma-def_binary64
196×expm1-udef_binary64
196×log1p-udef_binary64
119×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify38.0ms (0.4%)

Algorithm
egg-herbie
Rules
692×fma-def_binary64
619×associate-*l*_binary64
441×associate-/r*_binary64
196×associate-/r/_binary64
178×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01551422
14691420
217081358
Stop Event
node limit
Counts
175 → 168
Calls
Call 1
Inputs
(cos.f64 b)
(-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))
(-.f64 (cos.f64 b) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (*.f64 (sin.f64 b) a)))
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (cos.f64 b)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (*.f64 (sin.f64 b) a)))
(cos.f64 a)
(-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))
(-.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (cos.f64 a)) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (/.f64 b (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.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 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 a 3)) (pow.f64 (cos.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 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 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 r (pow.f64 b 3))) (pow.f64 (cos.f64 a) 3)))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 b 3) r)) (pow.f64 (cos.f64 a) 3)) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 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 b))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.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 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
(cos.f64 b)
(-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))
(fma.f64 (sin.f64 b) (neg.f64 a) (cos.f64 b))
(-.f64 (cos.f64 b) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (*.f64 (sin.f64 b) a)))
(-.f64 (cos.f64 b) (fma.f64 1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (*.f64 (sin.f64 b) a)))
(-.f64 (cos.f64 b) (fma.f64 (cos.f64 b) (*.f64 a (*.f64 a 1/2)) (*.f64 (sin.f64 b) a)))
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (cos.f64 b)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (*.f64 (sin.f64 b) a)))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (cos.f64 b)) (fma.f64 1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (*.f64 (sin.f64 b) a)))
(-.f64 (fma.f64 (sin.f64 b) (*.f64 (pow.f64 a 3) 1/6) (cos.f64 b)) (fma.f64 (cos.f64 b) (*.f64 a (*.f64 a 1/2)) (*.f64 (sin.f64 b) a)))
(cos.f64 a)
(-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))
(-.f64 (cos.f64 a) (*.f64 b (sin.f64 a)))
(-.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(-.f64 (cos.f64 a) (fma.f64 (sin.f64 a) b (*.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 (sin.f64 a))))
(-.f64 (cos.f64 a) (*.f64 b (+.f64 (sin.f64 a) (*.f64 1/2 (*.f64 (cos.f64 a) b)))))
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (cos.f64 a)) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (cos.f64 a)) (fma.f64 (sin.f64 a) b (*.f64 1/2 (*.f64 (cos.f64 a) (*.f64 b b)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (cos.f64 a)) (fma.f64 1/2 (*.f64 (cos.f64 a) (*.f64 b b)) (*.f64 b (sin.f64 a))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (cos.f64 a)) (*.f64 b (+.f64 (sin.f64 a) (*.f64 1/2 (*.f64 (cos.f64 a) b)))))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (/.f64 b (cos.f64 a)))
(+.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 (*.f64 b b) (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))))
(fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b) (/.f64 b (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 b b)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 b 3) (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a)))))
(+.f64 (/.f64 (*.f64 b b) (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) (+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (pow.f64 b 3)) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a)))))
(+.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3)) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b) (/.f64 b (cos.f64 a))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 b b)) (pow.f64 (cos.f64 a) 2)) (fma.f64 2/3 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 4))) (+.f64 (+.f64 (/.f64 (*.f64 (pow.f64 b 3) (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a)))) (/.f64 (pow.f64 (sin.f64 a) 3) (/.f64 (pow.f64 (cos.f64 a) 4) (pow.f64 b 4))))))
(+.f64 (/.f64 (*.f64 b b) (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) (+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (pow.f64 b 3)) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a)))) (fma.f64 2/3 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (pow.f64 b 4)) (*.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (pow.f64 b 4)))))
(fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b) (fma.f64 2/3 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (pow.f64 b 4)) (+.f64 (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (pow.f64 b 4) (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3))) (/.f64 b (cos.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))
(fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a (/.f64 (sin.f64 b) (cos.f64 b)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a))) (fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 a a))) (/.f64 (*.f64 (*.f64 a a) (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a)))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 4)))))))
(+.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 (*.f64 (*.f64 a a) (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 a a))) (fma.f64 5/6 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 a 3))) (/.f64 (pow.f64 (sin.f64 b) 4) (/.f64 (pow.f64 (cos.f64 b) 4) (pow.f64 a 3))))))))
(+.f64 (+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a)))) (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (pow.f64 a 3)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (pow.f64 a 3))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a) (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (pow.f64 a 3)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (pow.f64 a 3) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a))))))))
(/.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)
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 b (/.f64 (cos.f64 a) r))
(*.f64 (/.f64 b (cos.f64 a)) r)
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 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)))
(fma.f64 (/.f64 b (cos.f64 a)) r (*.f64 (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) b)) b) r))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 r (pow.f64 b 3))) (pow.f64 (cos.f64 a) 3)))))
(fma.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a)) (+.f64 (/.f64 b (/.f64 (cos.f64 a) r)) (+.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (*.f64 b b) r))) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 b 3) r)) (pow.f64 (cos.f64 a) 3)))))
(+.f64 (+.f64 (fma.f64 1/3 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (*.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 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (*.f64 (pow.f64 b 3) r)))
(+.f64 (fma.f64 (/.f64 b (cos.f64 a)) r (*.f64 (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) b)) b) r)) (*.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 b 3) r)) (pow.f64 (cos.f64 a) 3)) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))))))))
(+.f64 (+.f64 (/.f64 b (/.f64 (cos.f64 a) r)) (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (*.f64 b b) r)))) (fma.f64 2/3 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 (pow.f64 b 4) r))) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (/.f64 (pow.f64 (cos.f64 a) 4) (*.f64 (pow.f64 b 4) r))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 b 3) r)) (pow.f64 (cos.f64 a) 3))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r)) (+.f64 (+.f64 (fma.f64 1/3 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (*.f64 (pow.f64 b 3) r))) (fma.f64 2/3 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (pow.f64 b 4) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 (pow.f64 b 4) r)))) (*.f64 (/.f64 b (cos.f64 a)) r)))
(fma.f64 (/.f64 b (cos.f64 a)) r (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r) (fma.f64 2/3 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (pow.f64 b 4)) r) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 (pow.f64 b 4) r) (*.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3))))))
(/.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 b))
(/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (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)))
(fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) r)) a))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))))
(fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 (*.f64 a a) 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 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (*.f64 a a) r)) (pow.f64 (cos.f64 b) 3)))))
(+.f64 (+.f64 (fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 (*.f64 a a) r))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 (*.f64 a a) r))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)))
(fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (*.f64 a r))) (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a (*.f64 a r))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 4)))))))
(fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 (*.f64 a a) r))) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (fma.f64 5/6 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 a 3) r))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (*.f64 a a) r)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (/.f64 (pow.f64 (sin.f64 b) 4) (/.f64 (pow.f64 (cos.f64 b) 4) (*.f64 (pow.f64 a 3) r))))))))
(+.f64 (+.f64 (+.f64 (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 3) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 (*.f64 a a) r))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (*.f64 (pow.f64 a 3) r))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r))) (fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 (*.f64 a a) r))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
(fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (*.f64 a r))) (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 3) r)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a (*.f64 a r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (*.f64 (pow.f64 a 3) 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)

prune218.0ms (2.1%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New15513168
Fresh011
Picked101
Done000
Total15614170
Error
0.1b
Counts
170 → 14
Alt Table
StatusErrorProgram
30.5b
(fma.f64 (/.f64 b (cos.f64 a)) r (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r) (fma.f64 2/3 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (pow.f64 b 4)) r) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 (pow.f64 b 4) r) (*.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3))))))
14.4b
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
22.7b
(*.f64 r (/.f64 (sin.f64 b) (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 b) (sin.f64 a))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))
22.8b
(*.f64 r (/.f64 (sin.f64 b) (+.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)))))))))
15.1b
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)) 3)
14.5b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 a b)))) 1)))
15.0b
(/.f64 1 (/.f64 (cos.f64 (+.f64 a b)) (*.f64 (sin.f64 b) r)))
0.5b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (pow.f64 (cbrt.f64 (sin.f64 b)) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 b))) (*.f64 (sin.f64 a) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)) (*.f64 (cbrt.f64 (sin.f64 b)) (*.f64 (sin.f64 a) (pow.f64 (cbrt.f64 (sin.f64 b)) 2)))))))
0.9b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (cos.f64 a) (cos.f64 b)) (fma.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))))))
14.3b
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 (+.f64 a b)))
39.1b
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r) 3))
Compiler

Compiled 5181 to 1808 computations (65.1% saved)

localize18.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))))
0.2b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1))))))
0.2b
(*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1))
52.4b
(fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))

series35.0ms (0.3%)

Counts
4 → 108
Calls

27 calls:

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

rewrite70.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
288×log1p-udef_binary64
181×add-sqr-sqrt_binary64
178×*-un-lft-identity_binary64
178×pow1_binary64
165×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify52.0ms (0.5%)

Algorithm
egg-herbie
Rules
736×fma-def_binary64
671×associate-*l*_binary64
439×associate-/r*_binary64
196×associate-/r/_binary64
178×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01752338
15312328
218772244
Stop Event
node limit
Counts
215 → 161
Calls
Call 1
Inputs
0
0
0
0
0
0
0
0
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
0
0
0
0
0
0
0
0
0
0
0
0
(*.f64 (sin.f64 a) b)
(-.f64 (*.f64 (sin.f64 a) b) (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))
(-.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))) (*.f64 (sin.f64 a) b)) (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))
(-.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))) (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)))))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) a)
(-.f64 (*.f64 (sin.f64 b) a) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(-.f64 (+.f64 (*.f64 (sin.f64 b) a) (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)))) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(-.f64 (+.f64 (*.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 1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7)))))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 r (pow.f64 b 3))) (pow.f64 (cos.f64 a) 3)))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 b 3) r)) (pow.f64 (cos.f64 a) 3)) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))))))))
(/.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 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 4)))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (/.f64 b (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.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 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 4)))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
Outputs
0
0
0
0
0
0
0
0
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
0
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
0
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
0
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
0
0
0
0
0
0
0
0
0
0
0
0
0
(*.f64 (sin.f64 a) b)
(*.f64 b (sin.f64 a))
(-.f64 (*.f64 (sin.f64 a) b) (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))
(+.f64 (*.f64 b (sin.f64 a)) (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))
(fma.f64 b (sin.f64 a) (*.f64 (*.f64 (sin.f64 a) (pow.f64 b 3)) -1/6))
(*.f64 (sin.f64 a) (+.f64 (*.f64 -1/6 (pow.f64 b 3)) b))
(-.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))) (*.f64 (sin.f64 a) b)) (*.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 b (sin.f64 a))) (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))
(fma.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)) (fma.f64 b (sin.f64 a) (*.f64 (*.f64 (sin.f64 a) (pow.f64 b 3)) -1/6)))
(fma.f64 (sin.f64 a) (*.f64 (pow.f64 b 5) 1/120) (*.f64 (sin.f64 a) (+.f64 (*.f64 -1/6 (pow.f64 b 3)) b)))
(-.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))) (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)))))
(-.f64 (fma.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)) (*.f64 b (sin.f64 a))) (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)))))
(-.f64 (fma.f64 b (sin.f64 a) (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 5) 1/120))) (fma.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)) (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 3) 1/6))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 (*.f64 1/120 (pow.f64 b 5)) b)) (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (pow.f64 b 3)) (*.f64 1/5040 (pow.f64 b 7)))))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 b) a)
(-.f64 (*.f64 (sin.f64 b) a) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(+.f64 (*.f64 (sin.f64 b) a) (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(fma.f64 (sin.f64 b) a (*.f64 (*.f64 -1/6 (sin.f64 b)) (pow.f64 a 3)))
(*.f64 (sin.f64 b) (-.f64 a (*.f64 1/6 (pow.f64 a 3))))
(-.f64 (+.f64 (*.f64 (sin.f64 b) a) (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)))) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(+.f64 (fma.f64 (sin.f64 b) a (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)))) (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(fma.f64 (sin.f64 b) a (fma.f64 (*.f64 (sin.f64 b) 1/120) (pow.f64 a 5) (*.f64 (*.f64 -1/6 (sin.f64 b)) (pow.f64 a 3))))
(fma.f64 (sin.f64 b) a (*.f64 (sin.f64 b) (+.f64 (*.f64 1/120 (pow.f64 a 5)) (*.f64 -1/6 (pow.f64 a 3)))))
(-.f64 (+.f64 (*.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 1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7)))))
(-.f64 (fma.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)) (*.f64 1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7)))))
(-.f64 (fma.f64 (sin.f64 b) a (*.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 (pow.f64 a 7) 1/5040))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 (*.f64 1/120 (pow.f64 a 5)) a)) (*.f64 (sin.f64 b) (-.f64 (*.f64 -1/6 (pow.f64 a 3)) (*.f64 1/5040 (pow.f64 a 7)))))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 b) (sin.f64 a))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 b r) (cos.f64 a))
(*.f64 (/.f64 b (cos.f64 a)) r)
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (*.f64 (sin.f64 a) (*.f64 b b)) r) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r))))
(fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (*.f64 b b)) (*.f64 (/.f64 b (cos.f64 a)) r))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 r (pow.f64 b 3))) (pow.f64 (cos.f64 a) 3)))))
(fma.f64 1/3 (/.f64 (pow.f64 b 3) (/.f64 (cos.f64 a) r)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) (*.f64 b b)) r) (pow.f64 (cos.f64 a) 2)) (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (pow.f64 b 3) r))))))
(+.f64 (+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r))) (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (*.f64 (pow.f64 b 3) r))) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (/.f64 (cos.f64 a) r)) (/.f64 (*.f64 b r) (cos.f64 a))))
(+.f64 (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (*.f64 b b)) (*.f64 (/.f64 b (cos.f64 a)) r)) (*.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 b 3) r)) (pow.f64 (cos.f64 a) 3)) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))))))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) (*.f64 b b)) r) (pow.f64 (cos.f64 a) 2)) (fma.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 4))) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (/.f64 (pow.f64 (cos.f64 a) 4) (*.f64 r (pow.f64 b 4)))) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) (*.f64 (pow.f64 b 3) r))) (*.f64 1/3 (/.f64 (pow.f64 b 3) (/.f64 (cos.f64 a) r))))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (fma.f64 1/3 (/.f64 (pow.f64 b 3) (/.f64 (cos.f64 a) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (*.f64 (pow.f64 b 3) r))) (fma.f64 2/3 (/.f64 (*.f64 r (pow.f64 b 4)) (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) (*.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 r (pow.f64 b 4)))))))
(fma.f64 (/.f64 b (cos.f64 a)) r (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (*.f64 b b)) (fma.f64 2/3 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (pow.f64 b 4))) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 r (pow.f64 b 4)) (*.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) 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 b) (sin.f64 a))) r))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (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 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))))
(fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))))
(fma.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (*.f64 a a))) (cos.f64 b)) (+.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 (*.f64 (*.f64 r (*.f64 a a)) (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)))))
(+.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a (*.f64 a r)))) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (*.f64 a r))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 a a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a (*.f64 a r)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 4)))))))
(fma.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (*.f64 a a))) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (fma.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (*.f64 r (*.f64 a a)) (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (/.f64 (pow.f64 (sin.f64 b) 4) (/.f64 (pow.f64 (cos.f64 b) 4) (*.f64 (pow.f64 a 3) r))))))))
(fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (*.f64 a r))) (+.f64 (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 3) r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a (*.f64 a r)))) (+.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (*.f64 (pow.f64 a 3) r))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r) (*.f64 a a)) (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (fma.f64 5/6 (*.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (pow.f64 a 3)) r) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (*.f64 (pow.f64 a 3) r) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a (*.f64 a r))))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (/.f64 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))) r))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (/.f64 b (cos.f64 a)))
(+.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)))
(fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b) (/.f64 b (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))
(+.f64 (+.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))) (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 3)))) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 3))) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a)))))
(+.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3)) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b) (/.f64 b (cos.f64 a))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))))
(+.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))) (fma.f64 2/3 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (pow.f64 b 4))) (+.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 3))) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a)))) (/.f64 (pow.f64 (sin.f64 a) 3) (/.f64 (pow.f64 (cos.f64 a) 4) (pow.f64 b 4))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) (+.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 3))) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a)))) (fma.f64 2/3 (/.f64 (pow.f64 b 4) (/.f64 (pow.f64 (cos.f64 a) 2) (sin.f64 a))) (*.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (pow.f64 b 4)))))
(fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b) (fma.f64 2/3 (*.f64 (/.f64 (pow.f64 b 4) (pow.f64 (cos.f64 a) 2)) (sin.f64 a)) (+.f64 (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (pow.f64 b 4) (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3))) (/.f64 b (cos.f64 a)))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.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 (*.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))
(fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a (/.f64 (sin.f64 b) (cos.f64 b)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 a a))) (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) (*.f64 a a))))))
(+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a)))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a) (*.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 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 4)))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) (*.f64 a a))) (fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 a a))) (fma.f64 5/6 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) (/.f64 (pow.f64 (sin.f64 b) 4) (/.f64 (pow.f64 (cos.f64 b) 4) (pow.f64 a 3))))))))
(+.f64 (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a)) (+.f64 (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a))) (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (pow.f64 a 3)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (pow.f64 a 3)))))
(+.f64 (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a (/.f64 (sin.f64 b) (cos.f64 b))) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a) (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (pow.f64 a 3)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (pow.f64 a 3))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))

prune523.0ms (5%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New1955200
Fresh4913
Picked101
Done000
Total20014214
Error
0.0b
Counts
214 → 14
Alt Table
StatusErrorProgram
14.9b
(*.f64 r (*.f64 (/.f64 (sin.f64 b) (+.f64 (pow.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 3) (pow.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0) 3))) (+.f64 (pow.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0) (-.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0) (fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))
14.5b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 a b)))) 1)))
30.5b
(fma.f64 (/.f64 b (cos.f64 a)) r (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r) (fma.f64 2/3 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (pow.f64 b 4)) r) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 (pow.f64 b 4) r) (*.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3))))))
14.4b
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))
22.8b
(*.f64 r (/.f64 (sin.f64 b) (+.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)))))))))
39.1b
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r) 3))
0.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
15.1b
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r)) 3)
15.0b
(/.f64 1 (/.f64 (cos.f64 (+.f64 a b)) (*.f64 (sin.f64 b) r)))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))
0.5b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 b) (sin.f64 a))) 3)))))
0.9b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) 1))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1))))))
Compiler

Compiled 7933 to 3242 computations (59.1% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series13.0ms (0.1%)

Counts
4 → 100
Calls

27 calls:

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

rewrite160.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
770×prod-diff_binary64
357×egg-rr
145×add-sqr-sqrt_binary64
142×*-un-lft-identity_binary64
142×pow1_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify71.0ms (0.7%)

Algorithm
egg-herbie
Rules
843×fma-def_binary64
440×associate-/r*_binary64
236×cancel-sign-sub-inv_binary64
196×associate-/r/_binary64
178×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01872682
15782672
220492586
Stop Event
node limit
Counts
541 → 506
Calls
Call 1
Inputs
(*.f64 (sin.f64 a) b)
(-.f64 (*.f64 (sin.f64 a) b) (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))
(-.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))) (*.f64 (sin.f64 a) b)) (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))
(-.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))) (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)))))
(*.f64 (sin.f64 b) a)
(-.f64 (*.f64 (sin.f64 b) a) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(-.f64 (+.f64 (*.f64 (sin.f64 b) a) (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)))) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(-.f64 (+.f64 (*.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 1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7)))))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 r (pow.f64 b 3))) (pow.f64 (cos.f64 a) 3)))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 b 3) r)) (pow.f64 (cos.f64 a) 3)) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))))))))
(/.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 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 4)))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 b (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (/.f64 b (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.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 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 4)))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(cos.f64 b)
(-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))
(-.f64 (cos.f64 b) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (*.f64 (sin.f64 b) a)))
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (cos.f64 b)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (*.f64 (sin.f64 b) a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(cos.f64 a)
(-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))
(-.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (cos.f64 a)) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
Outputs
(*.f64 (sin.f64 a) b)
(-.f64 (*.f64 (sin.f64 a) b) (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))
(+.f64 (*.f64 (sin.f64 a) b) (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))
(fma.f64 (sin.f64 a) b (*.f64 (*.f64 -1/6 (sin.f64 a)) (pow.f64 b 3)))
(*.f64 (sin.f64 a) (-.f64 b (*.f64 1/6 (pow.f64 b 3))))
(-.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))) (*.f64 (sin.f64 a) b)) (*.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 (sin.f64 a) b)) (*.f64 -1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))))
(fma.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)) (fma.f64 (sin.f64 a) b (*.f64 (*.f64 -1/6 (sin.f64 a)) (pow.f64 b 3))))
(fma.f64 (sin.f64 a) b (*.f64 (sin.f64 a) (-.f64 (*.f64 (pow.f64 b 5) 1/120) (*.f64 (pow.f64 b 3) 1/6))))
(-.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5))) (*.f64 (sin.f64 a) b)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (*.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)))))
(-.f64 (fma.f64 1/120 (*.f64 (sin.f64 a) (pow.f64 b 5)) (*.f64 (sin.f64 a) b)) (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (*.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)))))
(-.f64 (fma.f64 (sin.f64 a) b (*.f64 (pow.f64 b 5) (*.f64 (sin.f64 a) 1/120))) (fma.f64 1/5040 (*.f64 (sin.f64 a) (pow.f64 b 7)) (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 3) 1/6))))
(+.f64 (*.f64 (sin.f64 a) (+.f64 b (*.f64 1/120 (pow.f64 b 5)))) (*.f64 (sin.f64 a) (-.f64 (*.f64 -1/6 (pow.f64 b 3)) (*.f64 1/5040 (pow.f64 b 7)))))
(*.f64 (sin.f64 b) a)
(*.f64 a (sin.f64 b))
(-.f64 (*.f64 (sin.f64 b) a) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(+.f64 (*.f64 a (sin.f64 b)) (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(fma.f64 a (sin.f64 b) (*.f64 (*.f64 -1/6 (sin.f64 b)) (pow.f64 a 3)))
(*.f64 (sin.f64 b) (+.f64 (*.f64 -1/6 (pow.f64 a 3)) a))
(-.f64 (+.f64 (*.f64 (sin.f64 b) a) (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)))) (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(+.f64 (fma.f64 (sin.f64 b) a (*.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)))) (*.f64 -1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))))
(fma.f64 a (sin.f64 b) (fma.f64 1/120 (*.f64 (sin.f64 b) (pow.f64 a 5)) (*.f64 (*.f64 -1/6 (sin.f64 b)) (pow.f64 a 3))))
(fma.f64 a (sin.f64 b) (*.f64 (sin.f64 b) (+.f64 (*.f64 1/120 (pow.f64 a 5)) (*.f64 -1/6 (pow.f64 a 3)))))
(-.f64 (+.f64 (*.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 1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7)))))
(-.f64 (fma.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)) (*.f64 1/5040 (*.f64 (sin.f64 b) (pow.f64 a 7)))))
(-.f64 (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 (pow.f64 a 7) (*.f64 1/5040 (sin.f64 b)))))
(+.f64 (*.f64 (sin.f64 b) (+.f64 a (*.f64 1/120 (pow.f64 a 5)))) (*.f64 (sin.f64 b) (-.f64 (*.f64 -1/6 (pow.f64 a 3)) (*.f64 1/5040 (pow.f64 a 7)))))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(*.f64 (sin.f64 a) (sin.f64 b))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (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 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 (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 (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 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 (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 (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 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 (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 (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 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 (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 b r) (cos.f64 a))
(*.f64 (/.f64 b (cos.f64 a)) r)
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (*.f64 (sin.f64 a) (*.f64 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))))
(fma.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 1/3 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 r (pow.f64 b 3))) (pow.f64 (cos.f64 a) 3)))))
(fma.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) (*.f64 b b)) r) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (*.f64 (pow.f64 b 3) r) (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3)))))
(+.f64 (+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r))) (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (*.f64 (pow.f64 b 3) r))) (fma.f64 1/3 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (*.f64 (/.f64 b (cos.f64 a)) r)))
(+.f64 (fma.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 (pow.f64 b 3) (cos.f64 a)) r) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 b 3) r)) (pow.f64 (cos.f64 a) 3)) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))))))))
(+.f64 (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (*.f64 (sin.f64 a) (*.f64 b b)) r) (pow.f64 (cos.f64 a) 2))) (fma.f64 2/3 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 r (pow.f64 b 4)))) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (/.f64 (pow.f64 (cos.f64 a) 4) (*.f64 r (pow.f64 b 4)))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))) (/.f64 (*.f64 (*.f64 (pow.f64 b 3) r) (pow.f64 (sin.f64 a) 2)) (pow.f64 (cos.f64 a) 3))))))
(+.f64 (+.f64 (fma.f64 1/3 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (*.f64 (pow.f64 b 3) r))) (fma.f64 2/3 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (pow.f64 b 4))) (/.f64 (*.f64 r (pow.f64 b 4)) (/.f64 (pow.f64 (cos.f64 a) 4) (pow.f64 (sin.f64 a) 3))))) (+.f64 (*.f64 (/.f64 b (cos.f64 a)) r) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r)))))
(fma.f64 (/.f64 b (cos.f64 a)) r (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b (*.f64 b r)) (fma.f64 2/3 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (pow.f64 b 4))) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 r (pow.f64 b 4)) (*.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (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 (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 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 (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 (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 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 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (sin.f64 b) (cos.f64 b)) r)
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (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)))
(fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (*.f64 (/.f64 (*.f64 a (pow.f64 (sin.f64 b) 2)) (pow.f64 (cos.f64 b) 2)) r))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))))
(fma.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (*.f64 a a))) (cos.f64 b)) (+.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 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) (*.f64 r (*.f64 a a)))))))
(+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (/.f64 (*.f64 a (*.f64 a r)) (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3)))) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (*.f64 a r))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
(fma.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 a r))) (cos.f64 b)) (fma.f64 (/.f64 (sin.f64 b) (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 a (*.f64 a r)) (pow.f64 (cos.f64 b) 3)) (pow.f64 (sin.f64 b) 3)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 4)))))))
(fma.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 r (*.f64 a a))) (cos.f64 b)) (+.f64 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) r)) (fma.f64 5/6 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 a 3) r))) (+.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) (*.f64 r (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (/.f64 (pow.f64 (sin.f64 b) 4) (/.f64 (pow.f64 (cos.f64 b) 4) (*.f64 (pow.f64 a 3) r))))))))
(+.f64 (+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (*.f64 (pow.f64 a 3) r))) (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 (pow.f64 a 3) r)) (/.f64 (*.f64 a (*.f64 a r)) (/.f64 (pow.f64 (cos.f64 b) 3) (pow.f64 (sin.f64 b) 3))))) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a (*.f64 a r))) (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r)))
(fma.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 a (*.f64 a r))) (cos.f64 b)) (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (fma.f64 5/6 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 (pow.f64 a 3) r))) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (*.f64 (pow.f64 a 3) r) (*.f64 (/.f64 (*.f64 a (*.f64 a r)) (pow.f64 (cos.f64 b) 3)) (pow.f64 (sin.f64 b) 3)))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 b (cos.f64 a))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (/.f64 b (cos.f64 a)))
(+.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 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)))
(fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b) (/.f64 b (cos.f64 a)))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 b b)) (pow.f64 (cos.f64 a) 2)) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 3))) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a)))))
(+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (pow.f64 b 3)) (+.f64 (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a))) (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b))))
(+.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) (+.f64 1/3 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)))) (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b) (/.f64 b (cos.f64 a))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 2)) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 b 3)) (pow.f64 (cos.f64 a) 3)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a))) (/.f64 b (cos.f64 a)))))))
(+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 b b)) (pow.f64 (cos.f64 a) 2)) (fma.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (pow.f64 b 4)) (pow.f64 (cos.f64 a) 2)) (+.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 b 3))) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a)))) (/.f64 (pow.f64 (sin.f64 a) 3) (/.f64 (pow.f64 (cos.f64 a) 4) (pow.f64 b 4))))))
(+.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b)) (+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 3)) (pow.f64 b 3)) (fma.f64 1/3 (/.f64 (pow.f64 b 3) (cos.f64 a)) (/.f64 b (cos.f64 a)))) (fma.f64 2/3 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (pow.f64 b 4)) (/.f64 (pow.f64 (sin.f64 a) 3) (/.f64 (pow.f64 (cos.f64 a) 4) (pow.f64 b 4))))))
(fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 b b) (fma.f64 2/3 (*.f64 (/.f64 (pow.f64 b 4) (pow.f64 (cos.f64 a) 2)) (sin.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (pow.f64 b 4) (+.f64 (/.f64 b (cos.f64 a)) (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) (+.f64 1/3 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2))))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.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 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a))
(fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a (/.f64 (sin.f64 b) (cos.f64 b)))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) a)) (fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 a a))) (/.f64 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) (*.f64 a 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) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a)))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a) (/.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) a) (pow.f64 (cos.f64 b) 2)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 a 2)) (pow.f64 (cos.f64 b) 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (pow.f64 a 2)) (cos.f64 b))) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 2))) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 a 3)) (pow.f64 (cos.f64 b) 4)))))))
(+.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 (pow.f64 (sin.f64 b) 3) (/.f64 (pow.f64 (cos.f64 b) 3) (*.f64 a a))) (fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 a a))) (fma.f64 5/6 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 a 3))) (/.f64 (pow.f64 (sin.f64 b) 4) (/.f64 (pow.f64 (cos.f64 b) 4) (pow.f64 a 3))))))))
(+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a) (+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (+.f64 (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a))) (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (pow.f64 a 3)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (pow.f64 a 3))))))
(+.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) a (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 b) (cos.f64 b)) (*.f64 a a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a a) (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 (cos.f64 b) 2)) (pow.f64 (sin.f64 b) 2)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (pow.f64 a 3)))))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(cos.f64 b)
(-.f64 (cos.f64 b) (*.f64 (sin.f64 b) a))
(-.f64 (cos.f64 b) (*.f64 a (sin.f64 b)))
(-.f64 (cos.f64 b) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (*.f64 (sin.f64 b) a)))
(-.f64 (cos.f64 b) (fma.f64 1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (*.f64 a (sin.f64 b))))
(-.f64 (cos.f64 b) (fma.f64 a (sin.f64 b) (*.f64 (cos.f64 b) (*.f64 1/2 (*.f64 a a)))))
(-.f64 (cos.f64 b) (fma.f64 (cos.f64 b) (*.f64 1/2 (*.f64 a a)) (*.f64 a (sin.f64 b))))
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3))) (cos.f64 b)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (cos.f64 b))) (*.f64 (sin.f64 b) a)))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (cos.f64 b)) (fma.f64 1/2 (*.f64 (cos.f64 b) (*.f64 a a)) (*.f64 a (sin.f64 b))))
(-.f64 (fma.f64 (*.f64 1/6 (sin.f64 b)) (pow.f64 a 3) (cos.f64 b)) (fma.f64 a (sin.f64 b) (*.f64 (cos.f64 b) (*.f64 1/2 (*.f64 a a)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 b) (pow.f64 a 3)) (cos.f64 b)) (fma.f64 (cos.f64 b) (*.f64 1/2 (*.f64 a a)) (*.f64 a (sin.f64 b))))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(cos.f64 a)
(-.f64 (cos.f64 a) (*.f64 (sin.f64 a) b))
(-.f64 (cos.f64 a) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(-.f64 (cos.f64 a) (fma.f64 (sin.f64 a) b (*.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) b)))
(-.f64 (cos.f64 a) (*.f64 b (+.f64 (sin.f64 a) (*.f64 (*.f64 (cos.f64 a) 1/2) b))))
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3))) (cos.f64 a)) (+.f64 (*.f64 (sin.f64 a) b) (*.f64 1/2 (*.f64 (cos.f64 a) (pow.f64 b 2)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (cos.f64 a)) (fma.f64 (sin.f64 a) b (*.f64 1/2 (*.f64 (cos.f64 a) (*.f64 b b)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 a) (pow.f64 b 3)) (cos.f64 a)) (fma.f64 1/2 (*.f64 b (*.f64 b (cos.f64 a))) (*.f64 (sin.f64 a) b)))
(+.f64 (+.f64 (cos.f64 a) (*.f64 (sin.f64 a) (-.f64 (*.f64 1/6 (pow.f64 b 3)) b))) (*.f64 (*.f64 b b) (*.f64 (cos.f64 a) -1/2)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))
(-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))

prune967.0ms (9.2%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New5015506
Fresh4913
Picked101
Done000
Total50614520
Error
0.0b
Counts
520 → 14
Alt Table
StatusErrorProgram
14.9b
(*.f64 r (*.f64 (/.f64 (sin.f64 b) (+.f64 (pow.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 3) (pow.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0) 3))) (+.f64 (pow.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0) (-.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0) (fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))
0.3b
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
30.5b
(fma.f64 (/.f64 b (cos.f64 a)) r (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r) (fma.f64 2/3 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (pow.f64 b 4)) r) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 (pow.f64 b 4) r) (*.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3))))))
14.4b
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
0.9b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))
14.5b
(*.f64 r (/.f64 (sin.f64 b) (expm1.f64 (log1p.f64 (cos.f64 (-.f64 b a))))))
27.2b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 a)) (sqrt.f64 (cos.f64 b))) (*.f64 (sqrt.f64 (cos.f64 a)) (sqrt.f64 (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))))))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) 1))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1))))))
39.1b
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r) 3))
0.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
41.9b
(*.f64 r (/.f64 (sin.f64 b) (+.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)))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))
22.8b
(*.f64 r (/.f64 (sin.f64 b) (+.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)))))))))
32.6b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (cbrt.f64 (*.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)))))))
Compiler

Compiled 20187 to 5060 computations (74.9% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))
0.2b
(*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1))
0.2b
(*.f64 (sin.f64 b) (sin.f64 a))
52.4b
(fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))

series5.0ms (0%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
0.0ms
b
@0
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))
0.0ms
a
@0
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))
0.0ms
b
@0
(fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))
0.0ms
b
@-inf
(fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a)))))
0.0ms
a
@-inf
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))

rewrite34.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
196×add-sqr-sqrt_binary64
193×pow1_binary64
192×*-un-lft-identity_binary64
182×expm1-log1p-u_binary64
181×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify34.0ms (0.3%)

Algorithm
egg-herbie
Rules
833×times-frac_binary64
667×associate-/l*_binary64
385×associate-*l*_binary64
358×fma-def_binary64
308×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0991235
13101233
210501197
Stop Event
node limit
Counts
110 → 71
Calls
Call 1
Inputs
0
0
0
0
0
0
0
0
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
0
0
0
0
0
0
0
0
0
0
0
0
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
(/.f64 (*.f64 b r) (cos.f64 a))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 r (pow.f64 b 3))) (pow.f64 (cos.f64 a) 3)))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 b 3) r)) (pow.f64 (cos.f64 a) 3)) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))))))))
(/.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 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 4)))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
Outputs
0
0
0
0
0
0
0
0
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
0
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
0
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
0
(-.f64 (*.f64 (sin.f64 b) (sin.f64 a)) (*.f64 (sin.f64 a) (sin.f64 b)))
0
0
0
0
0
0
0
0
0
0
0
0
0
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 b r) (cos.f64 a))
(/.f64 r (/.f64 (cos.f64 a) b))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 2) r)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (/.f64 (*.f64 (*.f64 (sin.f64 a) r) (*.f64 b b)) (pow.f64 (cos.f64 a) 2)))
(+.f64 (/.f64 r (/.f64 (cos.f64 a) b)) (/.f64 (*.f64 (sin.f64 a) (*.f64 b (*.f64 b r))) (pow.f64 (cos.f64 a) 2)))
(fma.f64 (/.f64 b (cos.f64 a)) r (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))) r))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 r (pow.f64 b 3)) (cos.f64 a))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 r (pow.f64 b 3))) (pow.f64 (cos.f64 a) 3)))))
(fma.f64 1/3 (/.f64 r (/.f64 (cos.f64 a) (pow.f64 b 3))) (+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) (*.f64 b b)) (pow.f64 (cos.f64 a) 2)) (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) (*.f64 r (pow.f64 b 3)))))))
(+.f64 (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 b (*.f64 b r))) (pow.f64 (cos.f64 a) 2)) (/.f64 (*.f64 r (pow.f64 b 3)) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 (sin.f64 a) 2)))) (fma.f64 1/3 (*.f64 (/.f64 r (cos.f64 a)) (pow.f64 b 3)) (/.f64 r (/.f64 (cos.f64 a) b))))
(+.f64 (fma.f64 (/.f64 b (cos.f64 a)) r (*.f64 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 b b))) r)) (*.f64 (*.f64 (/.f64 r (cos.f64 a)) (pow.f64 b 3)) (+.f64 1/3 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (sin.f64 a) (*.f64 r (pow.f64 b 2))) (pow.f64 (cos.f64 a) 2)) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (sin.f64 a) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 3) (*.f64 (pow.f64 b 4) r)) (pow.f64 (cos.f64 a) 4)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 a) 2) (*.f64 (pow.f64 b 3) r)) (pow.f64 (cos.f64 a) 3)) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 b 3) r) (cos.f64 a))))))))
(+.f64 (/.f64 (*.f64 b r) (cos.f64 a)) (+.f64 (/.f64 (*.f64 (*.f64 (sin.f64 a) r) (*.f64 b b)) (pow.f64 (cos.f64 a) 2)) (fma.f64 2/3 (/.f64 (sin.f64 a) (/.f64 (pow.f64 (cos.f64 a) 2) (*.f64 r (pow.f64 b 4)))) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (/.f64 (pow.f64 (cos.f64 a) 4) (*.f64 r (pow.f64 b 4)))) (+.f64 (*.f64 1/3 (/.f64 r (/.f64 (cos.f64 a) (pow.f64 b 3)))) (/.f64 (pow.f64 (sin.f64 a) 2) (/.f64 (pow.f64 (cos.f64 a) 3) (*.f64 r (pow.f64 b 3)))))))))
(+.f64 (+.f64 (+.f64 (/.f64 r (/.f64 (cos.f64 a) b)) (/.f64 (*.f64 (sin.f64 a) (*.f64 b (*.f64 b r))) (pow.f64 (cos.f64 a) 2))) (fma.f64 2/3 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (pow.f64 b 4))) (*.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 r (pow.f64 b 4))))) (fma.f64 1/3 (*.f64 (/.f64 r (cos.f64 a)) (pow.f64 b 3)) (/.f64 (*.f64 r (pow.f64 b 3)) (/.f64 (pow.f64 (cos.f64 a) 3) (pow.f64 (sin.f64 a) 2)))))
(fma.f64 (/.f64 b (cos.f64 a)) r (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 r (*.f64 b b)) (fma.f64 2/3 (*.f64 (/.f64 (pow.f64 b 4) (/.f64 (pow.f64 (cos.f64 a) 2) r)) (sin.f64 a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 r (pow.f64 b 4)) (*.f64 (*.f64 (/.f64 r (cos.f64 a)) (pow.f64 b 3)) (+.f64 1/3 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2))))))))
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.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 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))
(*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))
(+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (/.f64 (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 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)))
(fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r) (*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)))))
(fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 r (*.f64 a a)))) (+.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 (*.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 a a)) r) (pow.f64 (cos.f64 b) 3)))))
(+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (/.f64 (*.f64 (*.f64 a (*.f64 a r)) (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))) (fma.f64 1/2 (/.f64 (*.f64 a (*.f64 a r)) (/.f64 (cos.f64 b) (sin.f64 b))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b)) (*.f64 a a)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a (*.f64 a r)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r) (*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 b) (*.f64 (pow.f64 a 2) r)) (cos.f64 b))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (+.f64 (*.f64 5/6 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 (pow.f64 a 2) r)) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 b) 2) (*.f64 a r)) (pow.f64 (cos.f64 b) 2)) (/.f64 (*.f64 (pow.f64 (sin.f64 b) 4) (*.f64 (pow.f64 a 3) r)) (pow.f64 (cos.f64 b) 4)))))))
(fma.f64 1/2 (/.f64 (sin.f64 b) (/.f64 (cos.f64 b) (*.f64 r (*.f64 a a)))) (+.f64 (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b)) (fma.f64 5/6 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 r (pow.f64 a 3)))) (+.f64 (/.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 b) 3) (*.f64 a a)) r) (pow.f64 (cos.f64 b) 3)) (+.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (/.f64 (pow.f64 (cos.f64 b) 2) (*.f64 a r))) (/.f64 (pow.f64 (sin.f64 b) 4) (/.f64 (pow.f64 (cos.f64 b) 4) (*.f64 r (pow.f64 a 3)))))))))
(+.f64 (fma.f64 5/6 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 r (pow.f64 a 3))) (+.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)) (+.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (/.f64 (pow.f64 (cos.f64 b) 4) (*.f64 r (pow.f64 a 3)))) (/.f64 (*.f64 (*.f64 a (*.f64 a r)) (pow.f64 (sin.f64 b) 3)) (pow.f64 (cos.f64 b) 3))))) (fma.f64 1/2 (/.f64 (*.f64 a (*.f64 a r)) (/.f64 (cos.f64 b) (sin.f64 b))) (/.f64 (*.f64 (sin.f64 b) r) (cos.f64 b))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 r (cos.f64 b)) (sin.f64 b)) (*.f64 a a)) (fma.f64 (/.f64 (sin.f64 b) (cos.f64 b)) r (fma.f64 5/6 (*.f64 (/.f64 r (/.f64 (pow.f64 (cos.f64 b) 2) (pow.f64 a 3))) (pow.f64 (sin.f64 b) 2)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 3) (pow.f64 (cos.f64 b) 3)) (*.f64 a (*.f64 a r)) (fma.f64 (/.f64 (pow.f64 (sin.f64 b) 4) (pow.f64 (cos.f64 b) 4)) (*.f64 r (pow.f64 a 3)) (*.f64 (/.f64 (pow.f64 (sin.f64 b) 2) (pow.f64 (cos.f64 b) 2)) (*.f64 a r)))))))
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
(*.f64 (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a)))) r)

prune360.0ms (3.4%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New1530153
Fresh01313
Picked011
Done000
Total15314167
Error
0.0b
Counts
167 → 14
Alt Table
StatusErrorProgram
14.9b
(*.f64 r (*.f64 (/.f64 (sin.f64 b) (+.f64 (pow.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 3) (pow.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0) 3))) (+.f64 (pow.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))) 2) (*.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0) (-.f64 (*.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 0) (fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (sin.f64 a))))))))
0.3b
(*.f64 (/.f64 r (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))) (sin.f64 b))
30.5b
(fma.f64 (/.f64 b (cos.f64 a)) r (fma.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (*.f64 (*.f64 b b) r) (fma.f64 2/3 (*.f64 (*.f64 (/.f64 (sin.f64 a) (pow.f64 (cos.f64 a) 2)) (pow.f64 b 4)) r) (fma.f64 (/.f64 (pow.f64 (sin.f64 a) 3) (pow.f64 (cos.f64 a) 4)) (*.f64 (pow.f64 b 4) r) (*.f64 (*.f64 (/.f64 (pow.f64 b 3) (cos.f64 a)) r) (+.f64 (/.f64 (pow.f64 (sin.f64 a) 2) (pow.f64 (cos.f64 a) 2)) 1/3))))))
14.4b
(/.f64 r (/.f64 (cos.f64 (+.f64 b a)) (sin.f64 b)))
0.9b
(*.f64 r (/.f64 (sin.f64 b) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))
14.5b
(*.f64 r (/.f64 (sin.f64 b) (expm1.f64 (log1p.f64 (cos.f64 (-.f64 b a))))))
27.2b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (*.f64 (sqrt.f64 (cos.f64 a)) (sqrt.f64 (cos.f64 b))) (*.f64 (sqrt.f64 (cos.f64 a)) (sqrt.f64 (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))))))))
0.4b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) 1))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1))))))
39.1b
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))) r) 3))
0.3b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 b) (sin.f64 a))))
41.9b
(*.f64 r (/.f64 (sin.f64 b) (+.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)))))))
0.3b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1)))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 b) (sin.f64 a))))))))
22.8b
(*.f64 r (/.f64 (sin.f64 b) (+.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)))))))))
32.6b
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b))) (cbrt.f64 (*.f64 (cos.f64 a) (cos.f64 b)))) (cbrt.f64 (*.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)))))))
Compiler

Compiled 6044 to 2419 computations (60% saved)

regimes2.0s (19.4%)

Accuracy

Total 0.2b remaining (74.3%)

Threshold costs 0.2b (74.3%)

Counts
405 → 1
Compiler

Compiled 12398 to 3177 computations (74.4% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
distribute-rgt-neg-in_binary64
distribute-lft-neg-in_binary64
sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02046
13346
24446
35246
45346
55446
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1))))))
Outputs
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (pow.f64 (*.f64 (sin.f64 b) (sin.f64 a)) 1))) (fma.f64 (neg.f64 (sin.f64 b)) (*.f64 (sin.f64 a) 1) (*.f64 (sin.f64 b) (*.f64 (sin.f64 a) 1))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (neg.f64 (*.f64 (sin.f64 b) (sin.f64 a)))) (fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (sin.f64 b) (sin.f64 a))))))
(*.f64 r (/.f64 (sin.f64 b) (+.f64 (fma.f64 (cos.f64 a) (cos.f64 b) (*.f64 (sin.f64 b) (neg.f64 (sin.f64 a)))) (fma.f64 (neg.f64 (sin.f64 b)) (sin.f64 a) (*.f64 (sin.f64 b) (sin.f64 a))))))

end290.0ms (2.8%)

Stop Event
fuel
Compiler

Compiled 651 to 308 computations (52.7% saved)

Profiling

Loading profile data...