Details

Time bar (total: 44.5s)

analyze1.2s (2.6%)

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
0%99.9%0.1%7
25%74.9%0.1%8
54.6%45.2%0.1%9
56.2%43.7%0.1%10
62.4%37.4%0.1%11
65.9%33.9%0.1%12
Compiler

Compiled 20 to 15 computations (25% saved)

sample7.7s (17.3%)

Results
6.0s4791×body1024valid
1.1s1478×body512valid
559.0ms1973×body256valid
32.0ms14×body2048valid

preprocess118.0ms (0.3%)

Algorithm
egg-herbie
Rules
779×associate-/l/_binary64
735×associate-/r/_binary64
593×associate-*r/_binary64
437×associate-*l*_binary64
432×sqr-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027104
15472
211472
322172
464772
5294172
6460372
7552572
8579972
9612272
10655372
11779972
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 th) 2)))) (sin.f64 ky))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 kx))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 th) 2)))))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) (hypot.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 th) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 th) 2)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 th))))
Compiler

Compiled 22 to 17 computations (22.7% saved)

simplify90.0ms (0.2%)

Algorithm
egg-herbie
Rules
796×sqr-pow_binary64
698×associate-/r*_binary64
383×associate-*l*_binary64
374×cube-prod_binary64
360×fabs-mul_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01426
12618
25118
37918
415918
546018
6171018
7305618
8391618
9416818
10450518
11499718
12567718
13734318
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))

eval1.0ms (0%)

Compiler

Compiled 30 to 17 computations (43.3% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
3.9b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
Compiler

Compiled 33 to 23 computations (30.3% saved)

localize15.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 kx)
0.0b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.2b
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
Compiler

Compiled 36 to 9 computations (75% saved)

series37.0ms (0.1%)

Counts
4 → 100
Calls

27 calls:

TimeVariablePointExpression
7.0ms
ky
@0
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
3.0ms
kx
@0
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
3.0ms
ky
@0
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
3.0ms
ky
@inf
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
2.0ms
kx
@inf
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))

rewrite75.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
525×log-prod_binary64
408×exp-prod_binary64
302×pow-prod-down_binary64
277×pow2_binary64
195×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01042
120342
2259742
Stop Event
node limit
Counts
4 → 141
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 1) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (*.f64 (cbrt.f64 (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2) (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) 1) (/.f64 (cbrt.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) 1) (/.f64 (sqrt.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2) (/.f64 (sin.f64 th) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2) (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (cbrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)) (cbrt.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sqrt.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 kx))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 kx)))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 kx))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 kx))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 kx) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 kx)) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 kx) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 kx) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 kx) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 kx)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 kx)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sin.f64 kx))) 2)) (cbrt.f64 (log.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sin.f64 kx)))) (sqrt.f64 (log.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 kx) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 kx)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (sin.f64 kx))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 kx)) 1) 1))))))

simplify97.0ms (0.2%)

Algorithm
egg-herbie
Rules
618×times-frac_binary64
543×associate-/l*_binary64
404×associate-/r*_binary64
395×associate-*l/_binary64
365×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02363903
17363742
226113550
Stop Event
node limit
Counts
241 → 213
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(/.f64 (sin.f64 th) (sin.f64 kx))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 5))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 6))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 kx 6))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(sin.f64 kx)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (sin.f64 kx))))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
kx
(+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)
(+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))
(+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) (+.f64 (*.f64 -1/5040 (pow.f64 kx 7)) kx)))
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (+.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (/.f64 (+.f64 1/6 (*.f64 1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th)))) (pow.f64 ky 5) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(+.f64 (fma.f64 (-.f64 (/.f64 (*.f64 (sin.f64 th) -1/5040) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 -1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))) (pow.f64 ky 7) (*.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3))) (fma.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(+.f64 (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (+.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (/.f64 (+.f64 1/6 (*.f64 1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 7) (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3))) (fma.f64 (+.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (/.f64 (+.f64 1/6 (*.f64 1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th)))) (pow.f64 ky 5) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky))))))
(+.f64 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/5040 (pow.f64 th 7))))) (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (/.f64 -1/4 (pow.f64 (sin.f64 ky) 4)) (sin.f64 th))) (pow.f64 kx 4)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (+.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)) (neg.f64 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (pow.f64 kx 6)))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (fma.f64 (neg.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (/.f64 (*.f64 (sin.f64 th) 1/4) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (pow.f64 kx 6) (sin.f64 th))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (+.f64 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (/.f64 -1/4 (pow.f64 (sin.f64 ky) 4)) (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2))))) (*.f64 (/.f64 (*.f64 (sin.f64 th) 1/4) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))))) (pow.f64 kx 6)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (/.f64 -1/4 (pow.f64 (sin.f64 ky) 4)) (sin.f64 th))) (pow.f64 kx 4))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)
(*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 th (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 th 3) -1/6)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 th 3) -1/6))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5)) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 7)) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 (*.f64 -1/6 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 th 3) (fma.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 th 7) -1/5040)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(/.f64 (sin.f64 th) (sin.f64 kx))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (*.f64 ky ky))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 ky ky)) (/.f64 (sin.f64 th) (sin.f64 kx)))
(fma.f64 -1/2 (/.f64 (*.f64 ky ky) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (*.f64 ky ky))) (fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 4)) (/.f64 (sin.f64 th) (sin.f64 kx))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 ky ky)) (-.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)))) (pow.f64 ky 4))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 ky ky) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 5) -1/4))) (pow.f64 ky 4)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 5))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 6))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (*.f64 ky ky))) (fma.f64 -1 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 5) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th)))))) (pow.f64 ky 6)) (fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 4)) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 ky ky)) (fma.f64 (neg.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 6) (-.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)))) (pow.f64 ky 4)))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 ky ky) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 5) -1/4))) (pow.f64 ky 4))) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 5) -1/4))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (/.f64 (*.f64 (sin.f64 th) 1/4) (pow.f64 (sin.f64 kx) 5)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (pow.f64 ky 6)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (/.f64 (sin.f64 th) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (/.f64 (sin.f64 th) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 kx kx)) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4)))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (/.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (/.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 kx kx)) (/.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 kx 6))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (/.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 -1 (+.f64 (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (fma.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))))))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (fma.f64 -1 (fma.f64 (pow.f64 kx 6) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)))))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)))))) (/.f64 (sin.f64 th) (sin.f64 ky))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 kx kx)) (/.f64 (sin.f64 th) (sin.f64 ky))) (fma.f64 (pow.f64 kx 6) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2))))) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (/.f64 (+.f64 (/.f64 1/8 (/.f64 (pow.f64 (sin.f64 ky) 5) (sin.f64 th))) (/.f64 1/4 (/.f64 (pow.f64 (sin.f64 ky) 3) (*.f64 (sin.f64 th) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))))))) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(sin.f64 kx)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (sin.f64 kx))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx))
(fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) ky)) (sin.f64 kx))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))))
(fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) ky)) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (pow.f64 ky 4)) (sin.f64 kx)))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (pow.f64 ky 4)) (sin.f64 kx)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (sin.f64 kx))))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)) (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (sin.f64 kx) (pow.f64 ky 6))))))
(+.f64 (fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) ky)) (sin.f64 kx)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (sin.f64 kx)) (pow.f64 ky 6)) (*.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (pow.f64 ky 4)))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (pow.f64 ky 4)) (sin.f64 kx)) (*.f64 1/2 (+.f64 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (sin.f64 kx)) (pow.f64 ky 6)) (*.f64 (/.f64 ky (sin.f64 kx)) ky))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))
(fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (sin.f64 ky) (pow.f64 kx 6))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 ky)) (pow.f64 kx 6)) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 kx 6) (sin.f64 ky)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2))))) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
kx
(+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)
(fma.f64 -1/6 (pow.f64 kx 3) kx)
(+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))
(fma.f64 1/120 (pow.f64 kx 5) (fma.f64 -1/6 (pow.f64 kx 3) kx))
(+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) (+.f64 (*.f64 -1/5040 (pow.f64 kx 7)) kx)))
(fma.f64 1/120 (pow.f64 kx 5) (fma.f64 -1/6 (pow.f64 kx 3) (fma.f64 -1/5040 (pow.f64 kx 7) kx)))

localize59.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
0.2b
(pow.f64 (sin.f64 ky) 2)
0.3b
(pow.f64 (sin.f64 kx) 2)
3.6b
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
Compiler

Compiled 69 to 37 computations (46.4% saved)

series21.0ms (0%)

Counts
4 → 68
Calls

21 calls:

TimeVariablePointExpression
6.0ms
ky
@0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
2.0ms
kx
@0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
1.0ms
kx
@inf
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
1.0ms
th
@inf
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
1.0ms
kx
@-inf
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))

rewrite89.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
697×prod-diff_binary64
689×log-prod_binary64
256×expm1-udef_binary64
256×log1p-udef_binary64
254×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01454
129938
2382838
Stop Event
node limit
Counts
4 → 104
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(pow.f64 (sin.f64 kx) 2)
(pow.f64 (sin.f64 ky) 2)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 (sin.f64 ky) 4))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 (pow.f64 (sin.f64 kx) 3) (pow.f64 (sin.f64 ky) 3)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 4) (-.f64 (pow.f64 (sin.f64 ky) 4) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sin.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2))) (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 kx) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 kx) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 kx) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) (cbrt.f64 (pow.f64 (sin.f64 kx) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) (*.f64 (cbrt.f64 (sin.f64 kx)) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (sqrt.f64 (sin.f64 kx)) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 kx) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 kx) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 kx kx)) (cos.f64 (+.f64 kx kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 kx) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 kx) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 kx) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 kx))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sin.f64 ky) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 ky) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 ky) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 ky) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (cbrt.f64 (pow.f64 (sin.f64 ky) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 ky ky)) (cos.f64 (+.f64 ky ky))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 ky) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 ky) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 ky) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 ky))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))) (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 1) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2)) (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 1))))))

simplify98.0ms (0.2%)

Algorithm
egg-herbie
Rules
969×fma-def_binary64
432×distribute-lft-in_binary64
432×distribute-rgt-in_binary64
426×*-commutative_binary64
303×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02062422
16012274
220182140
376802140
Stop Event
node limit
Counts
172 → 160
Calls
Call 1
Inputs
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sin.f64 kx)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (sin.f64 kx))))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(pow.f64 kx 2)
(+.f64 (pow.f64 kx 2) (*.f64 -1/3 (pow.f64 kx 4)))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (*.f64 2/45 (pow.f64 kx 6))))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (+.f64 (*.f64 2/45 (pow.f64 kx 6)) (*.f64 -1/315 (pow.f64 kx 8)))))
(pow.f64 ky 2)
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (pow.f64 ky 2))
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (+.f64 (pow.f64 ky 2) (*.f64 2/45 (pow.f64 ky 6))))
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (+.f64 (pow.f64 ky 2) (+.f64 (*.f64 -1/315 (pow.f64 ky 8)) (*.f64 2/45 (pow.f64 ky 6)))))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))))) (pow.f64 ky 5)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 kx) 6))) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 kx) 4))) (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 (sin.f64 kx) 2))))))))) (+.f64 (*.f64 -1/12 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (*.f64 -1/240 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))))) (pow.f64 ky 5)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6))))) (+.f64 (sin.f64 th) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
Outputs
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))
(fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (pow.f64 kx 4) (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (sin.f64 ky) (pow.f64 kx 6))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)) (pow.f64 kx 6)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))))
(+.f64 (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) -1/6) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (fma.f64 (/.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) -1/6) (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)) (pow.f64 kx 6) (/.f64 (*.f64 kx kx) (sin.f64 ky))) (sin.f64 ky)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (sin.f64 kx))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4)))))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4))) (sin.f64 kx)))
(+.f64 (sin.f64 kx) (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (pow.f64 ky 4))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (sin.f64 kx))))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4))) (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (sin.f64 kx) (pow.f64 ky 6))))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (sin.f64 kx)) (pow.f64 ky 6)) (/.f64 -1/2 (/.f64 (sin.f64 kx) (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4))))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx)) (fma.f64 1/2 (*.f64 (pow.f64 ky 6) (/.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 2))) (sin.f64 kx))) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (pow.f64 ky 4))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(pow.f64 kx 2)
(*.f64 kx kx)
(+.f64 (pow.f64 kx 2) (*.f64 -1/3 (pow.f64 kx 4)))
(+.f64 (*.f64 kx kx) (*.f64 (pow.f64 kx 4) -1/3))
(fma.f64 kx kx (*.f64 (pow.f64 kx 4) -1/3))
(fma.f64 (pow.f64 kx 4) -1/3 (*.f64 kx kx))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (*.f64 2/45 (pow.f64 kx 6))))
(+.f64 (*.f64 kx kx) (fma.f64 -1/3 (pow.f64 kx 4) (*.f64 2/45 (pow.f64 kx 6))))
(fma.f64 kx kx (fma.f64 (pow.f64 kx 4) -1/3 (*.f64 2/45 (pow.f64 kx 6))))
(fma.f64 (pow.f64 kx 4) -1/3 (fma.f64 2/45 (pow.f64 kx 6) (*.f64 kx kx)))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (+.f64 (*.f64 2/45 (pow.f64 kx 6)) (*.f64 -1/315 (pow.f64 kx 8)))))
(+.f64 (*.f64 kx kx) (fma.f64 -1/3 (pow.f64 kx 4) (fma.f64 2/45 (pow.f64 kx 6) (*.f64 -1/315 (pow.f64 kx 8)))))
(fma.f64 kx kx (fma.f64 (pow.f64 kx 4) -1/3 (fma.f64 2/45 (pow.f64 kx 6) (*.f64 -1/315 (pow.f64 kx 8)))))
(fma.f64 kx kx (fma.f64 2/45 (pow.f64 kx 6) (fma.f64 (pow.f64 kx 4) -1/3 (*.f64 -1/315 (pow.f64 kx 8)))))
(pow.f64 ky 2)
(*.f64 ky ky)
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (pow.f64 ky 2))
(fma.f64 -1/3 (pow.f64 ky 4) (*.f64 ky ky))
(fma.f64 (pow.f64 ky 4) -1/3 (*.f64 ky ky))
(fma.f64 ky ky (*.f64 (pow.f64 ky 4) -1/3))
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (+.f64 (pow.f64 ky 2) (*.f64 2/45 (pow.f64 ky 6))))
(+.f64 (fma.f64 -1/3 (pow.f64 ky 4) (*.f64 ky ky)) (*.f64 2/45 (pow.f64 ky 6)))
(fma.f64 (pow.f64 ky 4) -1/3 (fma.f64 ky ky (*.f64 2/45 (pow.f64 ky 6))))
(fma.f64 ky ky (fma.f64 2/45 (pow.f64 ky 6) (*.f64 (pow.f64 ky 4) -1/3)))
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (+.f64 (pow.f64 ky 2) (+.f64 (*.f64 -1/315 (pow.f64 ky 8)) (*.f64 2/45 (pow.f64 ky 6)))))
(+.f64 (fma.f64 -1/3 (pow.f64 ky 4) (*.f64 ky ky)) (fma.f64 -1/315 (pow.f64 ky 8) (*.f64 2/45 (pow.f64 ky 6))))
(fma.f64 (pow.f64 ky 4) -1/3 (fma.f64 ky ky (fma.f64 -1/315 (pow.f64 ky 8) (*.f64 2/45 (pow.f64 ky 6)))))
(fma.f64 ky ky (fma.f64 (pow.f64 ky 4) -1/3 (fma.f64 -1/315 (pow.f64 ky 8) (*.f64 2/45 (pow.f64 ky 6)))))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (*.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))
(fma.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 -1/6 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))))) (pow.f64 ky 5)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (*.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (*.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (*.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) 1/12 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (*.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3))))
(fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 1/12 (pow.f64 (sin.f64 kx) 2)) 1/120))) (pow.f64 ky 5) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 -1/6 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 kx) 6))) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 kx) 4))) (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 (sin.f64 kx) 2))))))))) (+.f64 (*.f64 -1/12 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (*.f64 -1/240 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))))) (pow.f64 ky 5)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))))
(fma.f64 (fma.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 kx) 4)) (*.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (pow.f64 (sin.f64 kx) 2)))))))) (fma.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (*.f64 (sin.f64 kx) (sin.f64 th))) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/240)))) (pow.f64 ky 7) (+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (*.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (*.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))))
(fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040 (fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.f64 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (pow.f64 (sin.f64 kx) 2)) (/.f64 2/45 (pow.f64 (sin.f64 kx) 4))) (/.f64 2/3 (pow.f64 (sin.f64 kx) 6))))) (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/240 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) -1/12))))) (pow.f64 ky 7) (+.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (fma.f64 (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (*.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) 1/12 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (*.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (fma.f64 (+.f64 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (+.f64 (*.f64 -1/2 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (pow.f64 (sin.f64 kx) 2)) (/.f64 2/45 (pow.f64 (sin.f64 kx) 4)))))) (+.f64 (*.f64 -1/12 (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (/.f64 -1/12 (pow.f64 (sin.f64 kx) 6))))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 -1/240 (pow.f64 (sin.f64 kx) 2)) -1/5040))) (pow.f64 ky 7) (fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 1/12 (pow.f64 (sin.f64 kx) 2)) 1/120))) (pow.f64 ky 5) (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 -1/6 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (fma.f64 1/2 (*.f64 (sin.f64 th) (*.f64 (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)) (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))))) (sin.f64 th)))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2))) (fma.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)))) (*.f64 1/2 (*.f64 (pow.f64 kx 4) (*.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th)))) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6))))) (+.f64 (sin.f64 th) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))))))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))) (+.f64 (sin.f64 th) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))))))))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (fma.f64 -1/2 (*.f64 (sin.f64 th) (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (+.f64 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))) (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)))))) (fma.f64 1/2 (*.f64 (sin.f64 th) (*.f64 (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)) (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))))) (sin.f64 th))))
(fma.f64 -1/2 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx) (*.f64 (pow.f64 kx 6) (*.f64 (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))))) (fma.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)))) (*.f64 1/2 (*.f64 (pow.f64 kx 4) (*.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th)))) (sin.f64 th)))
(fma.f64 -1/2 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx) (*.f64 (pow.f64 kx 6) (*.f64 (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (fma.f64 -1/2 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 8)) (/.f64 (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))))) (fma.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)))) (*.f64 1/2 (*.f64 (pow.f64 kx 4) (*.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5)))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))

eval192.0ms (0.4%)

Compiler

Compiled 9715 to 4672 computations (51.9% saved)

prune106.0ms (0.2%)

Pruning

21 alts after pruning (20 fresh and 1 done)

PrunedKeptTotal
New35320373
Fresh000
Picked101
Done011
Total35421375
Error
0b
Counts
375 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
1.1b
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3)) (sin.f64 th))
22.8b
(*.f64 (sin.f64 ky) (cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3))))
9.7b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
45.9b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
3.9b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
4.1b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
46.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
32.0b
(pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2)
35.8b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
47.7b
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
16.9b
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sin.f64 th))
46.1b
(sin.f64 th)
47.7b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
25.0b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) kx)))
48.1b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
0.2b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
6.3b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
11.0b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (sin.f64 th))
45.9b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
Compiler

Compiled 604 to 427 computations (29.3% saved)

localize15.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 kx)
0.0b
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
0.1b
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
Compiler

Compiled 36 to 9 computations (75% saved)

series26.0ms (0.1%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
3.0ms
kx
@0
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
2.0ms
ky
@-inf
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
2.0ms
ky
@0
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
2.0ms
kx
@inf
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
2.0ms
ky
@inf
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))

rewrite115.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
570×log-prod_binary64
452×exp-prod_binary64
289×pow-prod-down_binary64
287×pow2_binary64
201×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01039
120939
2283539
Stop Event
node limit
Counts
3 → 134
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (*.f64 (cbrt.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 2) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) 1) (/.f64 (sqrt.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (cbrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) -2) (/.f64 (sin.f64 th) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2)) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2)) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) -1/2) (/.f64 (sin.f64 th) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) 1) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) (*.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 1 (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) 1) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) -2) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 ky) -1/2) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) (sqrt.f64 (sin.f64 ky))) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3) (pow.f64 (sin.f64 ky) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2)) (cbrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))) (sqrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2)) (cbrt.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sqrt.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1) 1))))))

simplify133.0ms (0.3%)

Algorithm
egg-herbie
Rules
826×fma-def_binary64
696×associate-*r*_binary64
666×associate-*l*_binary64
426×times-frac_binary64
399×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02033206
16232870
221012693
Stop Event
node limit
Counts
218 → 191
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
1
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (sin.f64 kx) ky)
(+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky))
(+.f64 (/.f64 (sin.f64 kx) ky) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (/.f64 (sin.f64 kx) ky) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky) (+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))) (pow.f64 ky 3)) (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (sin.f64 kx)) (+.f64 (*.f64 1/120 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 -1/6 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))))))) (pow.f64 ky 5)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sin.f64 kx)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (sin.f64 kx))))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6)))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 5) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6))))
(fma.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 5) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) -1/5040)))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 5) 1/120))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))) (pow.f64 kx 4)) (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 kx 4)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))) (pow.f64 kx 4)) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (neg.f64 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6)))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))) (pow.f64 kx 6))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 kx 4))) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)))) (/.f64 1/4 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 4) (sin.f64 th)) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3))))) (pow.f64 kx 6)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 ky 5))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 (-.f64 (/.f64 (*.f64 -1/5040 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(+.f64 (fma.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)))) (*.f64 (-.f64 (/.f64 -1/5040 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (/.f64 (-.f64 2/45 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))) (*.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 7)))
(fma.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 ky 5) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6))))) (pow.f64 ky 7)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
1
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1)
(fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2)))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))) (+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 4)) (fma.f64 1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(+.f64 1 (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) (*.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 4))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))) (+.f64 1 (*.f64 1/2 (+.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 4)) (fma.f64 1/2 (+.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2))) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))) 1))
(fma.f64 1/2 (fma.f64 (/.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 6) (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)) (+.f64 1 (*.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 4))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 kx) ky)
(+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky))
(+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx)))))
(fma.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) (/.f64 (sin.f64 kx) ky))
(fma.f64 ky (fma.f64 (sin.f64 kx) 1/6 (/.f64 1/2 (sin.f64 kx))) (/.f64 (sin.f64 kx) ky))
(+.f64 (/.f64 (sin.f64 kx) ky) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (/.f64 (sin.f64 kx) ky) (fma.f64 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) ky (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (fma.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) (*.f64 (sin.f64 kx) 1/120))))))
(+.f64 (/.f64 (sin.f64 kx) ky) (fma.f64 (pow.f64 ky 3) (-.f64 (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (*.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6))))) (*.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)))))
(fma.f64 ky (fma.f64 (sin.f64 kx) 1/6 (/.f64 1/2 (sin.f64 kx))) (fma.f64 (pow.f64 ky 3) (-.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (+.f64 (*.f64 (sin.f64 kx) -1/36) (/.f64 -1/12 (sin.f64 kx))))) (/.f64 (sin.f64 kx) ky)))
(+.f64 (/.f64 (sin.f64 kx) ky) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky) (+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))) (pow.f64 ky 3)) (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (sin.f64 kx)) (+.f64 (*.f64 1/120 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 -1/6 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))))))) (pow.f64 ky 5)))))
(+.f64 (/.f64 (sin.f64 kx) ky) (fma.f64 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) ky (fma.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (fma.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) (*.f64 (sin.f64 kx) 1/120))) (pow.f64 ky 3) (*.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 kx))) (fma.f64 -1/5040 (sin.f64 kx) (fma.f64 1/120 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) (*.f64 -1/6 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (fma.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) (*.f64 (sin.f64 kx) 1/120)))))))))))
(+.f64 (fma.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) (/.f64 (sin.f64 kx) ky)) (fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/2 (-.f64 (/.f64 2/45 (sin.f64 kx)) (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (pow.f64 (sin.f64 kx) 3)))) (fma.f64 (sin.f64 kx) -1/5040 (fma.f64 -1/6 (-.f64 (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (*.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6))))) (*.f64 1/120 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)))))) (*.f64 (pow.f64 ky 3) (-.f64 (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (*.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6))))))))
(+.f64 (fma.f64 ky (fma.f64 (sin.f64 kx) 1/6 (/.f64 1/2 (sin.f64 kx))) (/.f64 (sin.f64 kx) ky)) (fma.f64 (pow.f64 ky 5) (-.f64 (/.f64 (+.f64 1/45 (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 kx)) (fma.f64 -1/6 (-.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (+.f64 (*.f64 (sin.f64 kx) -1/36) (/.f64 -1/12 (sin.f64 kx))))) (fma.f64 (sin.f64 kx) -1/5040 (+.f64 (*.f64 (sin.f64 kx) 1/720) (/.f64 1/240 (sin.f64 kx)))))) (*.f64 (pow.f64 ky 3) (-.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (+.f64 (*.f64 (sin.f64 kx) -1/36) (/.f64 -1/12 (sin.f64 kx))))))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))
(fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))
(fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) kx) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky)))
(+.f64 (sin.f64 ky) (fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) kx) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (/.f64 (sin.f64 ky) (pow.f64 kx 4)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (sin.f64 ky) (pow.f64 kx 6))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)) (pow.f64 kx 6)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))))
(fma.f64 1/2 (fma.f64 (/.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)) (pow.f64 kx 6) (*.f64 (/.f64 kx (sin.f64 ky)) kx)) (+.f64 (sin.f64 ky) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (/.f64 (sin.f64 ky) (pow.f64 kx 4)))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (sin.f64 kx))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx))
(fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) ky)) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4)))))
(fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) ky)) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4))) (sin.f64 kx)))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (pow.f64 ky 4)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (sin.f64 kx))))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (sin.f64 kx) (pow.f64 ky 6))))))
(+.f64 (fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) ky)) (sin.f64 kx)) (fma.f64 1/2 (*.f64 (-.f64 (/.f64 2/45 (sin.f64 kx)) (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 6)) (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (fma.f64 1/2 (*.f64 (-.f64 (/.f64 2/45 (sin.f64 kx)) (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 6)) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (pow.f64 ky 4))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))

localize9.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize22.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 kx)
0.2b
(/.f64 (sin.f64 th) (sin.f64 kx))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
Compiler

Compiled 25 to 8 computations (68% saved)

series22.0ms (0%)

Counts
2 → 44
Calls

15 calls:

TimeVariablePointExpression
4.0ms
th
@-inf
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
3.0ms
ky
@0
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
2.0ms
kx
@0
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
1.0ms
kx
@0
(/.f64 (sin.f64 th) (sin.f64 kx))
1.0ms
th
@0
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))

rewrite77.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
971×pow1_binary64
891×add-log-exp_binary64
891×log1p-expm1-u_binary64
891×expm1-log1p-u_binary64
95×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
118221
2235021
Stop Event
node limit
Counts
2 → 55
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 1) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (cbrt.f64 (pow.f64 (sin.f64 kx) 2))) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 th) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 2) (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (*.f64 (cbrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) (sqrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 th)) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) 1) (/.f64 (sqrt.f64 (sin.f64 th)) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (sin.f64 kx) 2))) (/.f64 (sin.f64 th) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (cbrt.f64 (pow.f64 (sin.f64 kx) 2))) (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (pow.f64 (sin.f64 kx) 2))) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (sin.f64 kx))) (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (sqrt.f64 (sin.f64 kx))) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))))

simplify98.0ms (0.2%)

Algorithm
egg-herbie
Rules
811×fma-neg_binary64
635×fma-def_binary64
589×distribute-rgt-in_binary64
454×associate-*l*_binary64
428×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0110994
1348963
21132911
34787827
Stop Event
node limit
Counts
99 → 95
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky))))))))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 th (sin.f64 kx))
(+.f64 (/.f64 th (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))))
(+.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx)))))
(+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 kx))) (+.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx))))))
(/.f64 (sin.f64 th) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 kx 3))) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th)))) (+.f64 (*.f64 -1/5040 (sin.f64 th)) (*.f64 1/720 (sin.f64 th)))) (pow.f64 kx 5))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 kx 3))) (/.f64 (sin.f64 th) kx))))
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 1/120 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 5)) (/.f64 (*.f64 (*.f64 -1/6 (sin.f64 th)) (pow.f64 ky 3)) (sin.f64 kx))))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (fma.f64 -1/5040 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 7))) (fma.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 -1/5040 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 7)) (fma.f64 1/120 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 5)) (/.f64 (*.f64 (*.f64 -1/6 (sin.f64 th)) (pow.f64 ky 3)) (sin.f64 kx)))))
(fma.f64 -1/5040 (*.f64 (pow.f64 ky 7) (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))))))
(+.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 th (sin.f64 ky)) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx)) (/.f64 (*.f64 th (sin.f64 ky)) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) (/.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))
(fma.f64 1/120 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx)) (/.f64 (*.f64 th (sin.f64 ky)) (sin.f64 kx))))
(fma.f64 1/120 (/.f64 (pow.f64 th 5) (/.f64 (sin.f64 kx) (sin.f64 ky))) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (/.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 th 5) (/.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 1/120 (pow.f64 th 5)))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))))
(fma.f64 1/120 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx)) (fma.f64 -1/5040 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 7))) (/.f64 (*.f64 th (sin.f64 ky)) (sin.f64 kx)))))
(fma.f64 1/120 (/.f64 (pow.f64 th 5) (/.f64 (sin.f64 kx) (sin.f64 ky))) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (/.f64 (sin.f64 kx) (sin.f64 ky))) (fma.f64 -1/5040 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 7)) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 th 5) (/.f64 (sin.f64 ky) (sin.f64 kx))) (fma.f64 -1/5040 (*.f64 (pow.f64 th 7) (/.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(+.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 kx 1/6) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360) (pow.f64 kx 3)) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) 7/360)) (*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 kx 1/6) (/.f64 (sin.f64 th) kx))))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky))))))))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360) (pow.f64 kx 3)) (fma.f64 -1 (*.f64 (pow.f64 kx 5) (fma.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky)) (fma.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360))))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky))))))
(-.f64 (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))) (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/2160) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 1/840)))) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 kx 3))))
(-.f64 (*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 kx 1/6) (/.f64 (sin.f64 th) kx))) (fma.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 (pow.f64 kx 3) -7/360) (*.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -31/15120))))
(fma.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 31/15120) (*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 th (sin.f64 kx))
(+.f64 (/.f64 th (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (/.f64 th (sin.f64 kx)))
(+.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx)))))
(+.f64 (/.f64 th (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (/.f64 (*.f64 1/120 (pow.f64 th 5)) (sin.f64 kx))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (/.f64 th (sin.f64 kx))) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx)) (/.f64 th (sin.f64 kx))))
(+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 kx))) (+.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx))))))
(fma.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 kx)) (+.f64 (/.f64 th (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (/.f64 (*.f64 1/120 (pow.f64 th 5)) (sin.f64 kx)))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx)))) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 kx)) (/.f64 th (sin.f64 kx))))
(fma.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx)) (/.f64 th (sin.f64 kx)))))
(/.f64 (sin.f64 th) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx))
(fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))
(fma.f64 (sin.f64 th) (*.f64 kx 1/6) (/.f64 (sin.f64 th) kx))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 kx 3))) (/.f64 (sin.f64 th) kx)))
(fma.f64 1/6 (*.f64 (sin.f64 th) kx) (fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 th) -7/360)) (/.f64 (sin.f64 th) kx)))
(fma.f64 1/6 (*.f64 (sin.f64 th) kx) (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 -7/360 (pow.f64 kx 3)))))
(+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))
(+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th)))) (+.f64 (*.f64 -1/5040 (sin.f64 th)) (*.f64 1/720 (sin.f64 th)))) (pow.f64 kx 5))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 kx 3))) (/.f64 (sin.f64 th) kx))))
(fma.f64 1/6 (*.f64 (sin.f64 th) kx) (fma.f64 -1 (*.f64 (pow.f64 kx 5) (fma.f64 1/6 (*.f64 (sin.f64 th) -7/360) (*.f64 (sin.f64 th) 1/840))) (fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 th) -7/360)) (/.f64 (sin.f64 th) kx))))
(fma.f64 1/6 (*.f64 (sin.f64 th) kx) (-.f64 (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 -7/360 (pow.f64 kx 3)))) (*.f64 (pow.f64 kx 5) (fma.f64 (sin.f64 th) 1/840 (*.f64 (sin.f64 th) -7/2160)))))
(+.f64 (*.f64 (sin.f64 th) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))) (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 (pow.f64 kx 5) (*.f64 (sin.f64 th) -31/15120))))
(+.f64 (*.f64 (sin.f64 th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))) (fma.f64 (pow.f64 kx 5) (*.f64 (sin.f64 th) 31/15120) (/.f64 (sin.f64 th) kx)))

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 kx)
0.0b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.2b
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
Compiler

Compiled 36 to 9 computations (75% saved)

series20.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
2.0ms
th
@0
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
1.0ms
ky
@0
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
1.0ms
kx
@0
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
1.0ms
ky
@0
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
1.0ms
ky
@inf
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))

rewrite85.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
570×log-prod_binary64
452×exp-prod_binary64
289×pow-prod-down_binary64
287×pow2_binary64
201×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01031
120931
2283531
Stop Event
node limit
Counts
2 → 104
Calls
Call 1
Inputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) -2) (/.f64 (sin.f64 ky) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2))) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2))) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) -1/2) (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) 1) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (pow.f64 (sin.f64 th) 2))) (cbrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 th))) (sqrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (*.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 1 (neg.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) -2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (cbrt.f64 (pow.f64 (sin.f64 th) 2))) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (pow.f64 (sin.f64 th) 2))) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 th) -1/2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (sqrt.f64 (sin.f64 th))) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 (sin.f64 th) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)) (cbrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) (sqrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 1) 1))))))

simplify80.0ms (0.2%)

Algorithm
egg-herbie
Rules
929×fma-def_binary64
674×associate-*l*_binary64
552×times-frac_binary64
529×associate-/l*_binary64
375×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01893066
16042668
222122485
Stop Event
node limit
Counts
176 → 153
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th))
(+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 1/720 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 th 5))) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))))
(fma.f64 (-.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6))) (pow.f64 ky 5) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(+.f64 (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 -1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))) (pow.f64 ky 7) (*.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3))) (fma.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))))
(fma.f64 (-.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6))) (pow.f64 ky 5) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (fma.f64 (-.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (-.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))))) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 ky 7) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)))
(fma.f64 (neg.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 4) (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (sin.f64 th)) (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 kx 4)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (neg.f64 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (pow.f64 kx 6)))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 kx 6))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (sin.f64 th)) (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 kx 4))) (*.f64 (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)))) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (*.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 kx 6)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky))))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 (pow.f64 th 5) 1/120))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky))))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)) (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (/.f64 ky (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) ky)) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 th)) (/.f64 ky (sin.f64 kx))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (*.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (/.f64 ky (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) ky)) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 4))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 th)) (/.f64 ky (sin.f64 kx))) (fma.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (*.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 kx)) (/.f64 (pow.f64 ky 6) (sin.f64 th))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(fma.f64 1/2 (/.f64 ky (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) ky)) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (sin.f64 kx)) (/.f64 (pow.f64 ky 6) (sin.f64 th))) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 4))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(+.f64 (fma.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th)) (/.f64 (sin.f64 kx) (sin.f64 th))) (*.f64 (/.f64 1/2 (sin.f64 kx)) (+.f64 (/.f64 ky (/.f64 (sin.f64 th) ky)) (*.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 2))) (/.f64 (pow.f64 ky 6) (sin.f64 th))))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 th)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (/.f64 kx (/.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th)))
(fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 th)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (/.f64 kx (/.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 th)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (/.f64 kx (/.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)
(+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))
(fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th) (*.f64 1/6 (*.f64 th (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 1/6 (*.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th))))
(fma.f64 -1 (*.f64 (pow.f64 th 3) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) -7/360)) (fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th) (*.f64 1/6 (*.f64 th (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
(-.f64 (fma.f64 1/6 (*.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 th 3))))
(fma.f64 (pow.f64 th 3) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 7/360) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 1/720 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 th 5))) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))))
(fma.f64 -1 (*.f64 (pow.f64 th 3) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) -7/360)) (fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th) (fma.f64 -1 (*.f64 (pow.f64 th 5) (fma.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (fma.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) -7/360) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) 1/720)))) (*.f64 1/6 (*.f64 th (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(+.f64 (-.f64 (fma.f64 1/6 (*.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 th 3)))) (*.f64 (fma.f64 -1/5040 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (fma.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 1/720 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -7/2160))) (neg.f64 (pow.f64 th 5))))
(-.f64 (fma.f64 (pow.f64 th 3) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 7/360) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th)))) (*.f64 (pow.f64 th 5) (fma.f64 -1/5040 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -1/540))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))

localize66.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
0.2b
(pow.f64 (sin.f64 ky) 2)
0.8b
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))
6.4b
(sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))
Compiler

Compiled 101 to 51 computations (49.5% saved)

series58.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
19.0ms
kx
@0
(sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))
8.0ms
ky
@0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
4.0ms
kx
@-inf
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
3.0ms
th
@inf
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
3.0ms
ky
@0
(sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))

rewrite91.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
518×fma-def_binary64
328×expm1-udef_binary64
328×log1p-udef_binary64
290×fma-neg_binary64
274×log-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01766
138642
2535532
Stop Event
node limit
Counts
3 → 101
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (pow.f64 (sin.f64 kx) 2) 3/2)) (hypot.f64 (pow.f64 (sin.f64 kx) 2) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) 4) (*.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (pow.f64 (sin.f64 kx) 2) 2) (pow.f64 (sin.f64 ky) 4))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sin.f64 ky) (sqrt.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (pow.f64 (sin.f64 kx) 2)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1/2 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1/2 (*.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 kx) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 kx) 2)) (pow.f64 (cbrt.f64 (pow.f64 (sin.f64 kx) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (sin.f64 kx) 2)) 2) (cbrt.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (sin.f64 kx) 2)) (sqrt.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 kx) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1/8 (pow.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) 3)) (/.f64 1 (fma.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) (pow.f64 (cos.f64 kx) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2) 1/4)) (/.f64 1 (pow.f64 (cos.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) (pow.f64 (cos.f64 kx) 2) 1/4) (-.f64 1/8 (pow.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (cos.f64 kx) 2) (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/8 (pow.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) 3)) (fma.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) (pow.f64 (cos.f64 kx) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2) 1/4)) (pow.f64 (cos.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (cos.f64 (+.f64 kx kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1/8 (pow.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) 3))) (neg.f64 (fma.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) (pow.f64 (cos.f64 kx) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2) 1/4))) (neg.f64 (pow.f64 (cos.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1/8 (pow.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) 3)) (+.f64 1/4 (-.f64 (*.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) (*.f64 1/2 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/4 (*.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) (*.f64 (cos.f64 (+.f64 kx kx)) -1/2))) (-.f64 1/2 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 kx) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (sin.f64 kx) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (pow.f64 (sin.f64 kx) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 kx) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (sin.f64 kx) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (sin.f64 kx) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 kx) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sin.f64 kx) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 kx))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (neg.f64 (cos.f64 (+.f64 kx kx))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 kx kx)) -1/2 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2) 1/4)) (neg.f64 (cbrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (neg.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (cos.f64 (+.f64 kx kx)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) (cbrt.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2))) (cbrt.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) (sqrt.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cos.f64 (+.f64 kx kx))) 1/2 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2) 1/4))) (cbrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))) (sqrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2))) (cbrt.f64 (cos.f64 (+.f64 kx kx))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (sqrt.f64 (cos.f64 (+.f64 kx kx)))) (sqrt.f64 (cos.f64 (+.f64 kx kx))) 1/2)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 1) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1))))))

simplify109.0ms (0.2%)

Algorithm
egg-herbie
Rules
729×times-frac_binary64
456×*-commutative_binary64
432×distribute-lft-in_binary64
432×distribute-rgt-in_binary64
284×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02143353
16303325
219473073
361023012
Stop Event
node limit
Counts
173 → 156
Calls
Call 1
Inputs
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (+.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))) (*.f64 -1/2 (*.f64 (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (pow.f64 ky 4)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (pow.f64 ky 6)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (+.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))) (*.f64 -1/2 (*.f64 (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (pow.f64 ky 4)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(pow.f64 kx 2)
(+.f64 (pow.f64 kx 2) (*.f64 -1/3 (pow.f64 kx 4)))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (*.f64 2/45 (pow.f64 kx 6))))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (+.f64 (*.f64 2/45 (pow.f64 kx 6)) (*.f64 -1/315 (pow.f64 kx 8)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (*.f64 -1/6 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))) (pow.f64 ky 3)) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sin.f64 th)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (*.f64 1/120 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))) (pow.f64 ky 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (*.f64 -1/6 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))) (pow.f64 ky 3)) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sin.f64 th)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (*.f64 1/120 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))) (pow.f64 ky 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (*.f64 -1/6 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))) (pow.f64 ky 3)) (+.f64 (*.f64 (+.f64 (*.f64 -1/240 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (+.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 4)) (*.f64 2/45 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2)))))) (sin.f64 th)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (*.f64 -1/12 (*.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sin.f64 th)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))) (pow.f64 ky 7)) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6))))) (+.f64 (sin.f64 th) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) th)) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) th)) (+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 3))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) th)) (+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
Outputs
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))
(fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (sin.f64 ky) (pow.f64 kx 6))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)) (pow.f64 kx 6)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (fma.f64 1/2 (*.f64 (pow.f64 kx 6) (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky ky)) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (+.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))) (*.f64 -1/2 (*.f64 (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (pow.f64 ky 4)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))))
(+.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky ky)) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2)) (pow.f64 ky 4)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky ky)) (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2)) (pow.f64 ky 4))) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))
(+.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (+.f64 (*.f64 1/2 (*.f64 ky ky)) (*.f64 (+.f64 1/3 (*.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) 1/4)) (*.f64 -1/2 (pow.f64 ky 4))))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (pow.f64 ky 6)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (+.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))) (*.f64 -1/2 (*.f64 (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (pow.f64 ky 4)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky ky)) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2)) (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (pow.f64 ky 6))) (+.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2)) (pow.f64 ky 4)))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky ky)) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (-.f64 2/45 (/.f64 -1/2 (/.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2))))) (pow.f64 ky 6))) (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2)) (pow.f64 ky 4))) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(+.f64 (fma.f64 (*.f64 (+.f64 1/3 (*.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) 1/4)) (*.f64 -1/2 (pow.f64 ky 4))) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (+.f64 (*.f64 ky ky) (*.f64 (-.f64 2/45 (*.f64 (/.f64 -1/2 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (+.f64 1/3 (*.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) 1/4)))) (pow.f64 ky 6))))))
(+.f64 (fma.f64 (*.f64 (+.f64 1/3 (*.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) 1/4)) (*.f64 -1/2 (pow.f64 ky 4))) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (+.f64 (*.f64 ky ky) (*.f64 (+.f64 2/45 (*.f64 (/.f64 (+.f64 1/3 (*.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) 1/4)) (+.f64 (neg.f64 (cos.f64 (*.f64 kx -2))) 1)) 1)) (pow.f64 ky 6))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(pow.f64 kx 2)
(*.f64 kx kx)
(+.f64 (pow.f64 kx 2) (*.f64 -1/3 (pow.f64 kx 4)))
(+.f64 (*.f64 kx kx) (*.f64 (pow.f64 kx 4) -1/3))
(fma.f64 (pow.f64 kx 4) -1/3 (*.f64 kx kx))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (*.f64 2/45 (pow.f64 kx 6))))
(+.f64 (*.f64 kx kx) (fma.f64 -1/3 (pow.f64 kx 4) (*.f64 2/45 (pow.f64 kx 6))))
(fma.f64 kx kx (fma.f64 (pow.f64 kx 4) -1/3 (*.f64 2/45 (pow.f64 kx 6))))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (+.f64 (*.f64 2/45 (pow.f64 kx 6)) (*.f64 -1/315 (pow.f64 kx 8)))))
(+.f64 (*.f64 kx kx) (fma.f64 -1/3 (pow.f64 kx 4) (fma.f64 2/45 (pow.f64 kx 6) (*.f64 -1/315 (pow.f64 kx 8)))))
(fma.f64 kx kx (fma.f64 (pow.f64 kx 4) -1/3 (fma.f64 2/45 (pow.f64 kx 6) (*.f64 -1/315 (pow.f64 kx 8)))))
(fma.f64 kx kx (fma.f64 (pow.f64 kx 4) -1/3 (fma.f64 -1/315 (pow.f64 kx 8) (*.f64 2/45 (pow.f64 kx 6)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (*.f64 -1/6 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))) (pow.f64 ky 3)) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))
(fma.f64 (fma.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (*.f64 (*.f64 -1/6 (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))) (pow.f64 ky 3) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 th) -1/6))) (pow.f64 ky 3)))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th)) (*.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/6))) (pow.f64 ky 3)))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sin.f64 th)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (*.f64 1/120 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))) (pow.f64 ky 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (*.f64 -1/6 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))) (pow.f64 ky 3)) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))
(fma.f64 (fma.f64 1/12 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (fma.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (*.f64 (sin.f64 th) (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2)))) (*.f64 (*.f64 1/120 (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (*.f64 (*.f64 -1/6 (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))) (pow.f64 ky 3) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th)))))
(fma.f64 (fma.f64 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 1/12 (fma.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2)) (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (sin.f64 th))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 th) 1/120)))) (pow.f64 ky 5) (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 th) -1/6))) (pow.f64 ky 3))))
(fma.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2)) (*.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) -1/4))) (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (sin.f64 th)))) (*.f64 (sin.f64 th) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) 1/120) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) 1/12)))) (pow.f64 ky 5) (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th)) (*.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/6))) (pow.f64 ky 3))))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sin.f64 th)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (*.f64 1/120 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))) (pow.f64 ky 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (*.f64 -1/6 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))) (pow.f64 ky 3)) (+.f64 (*.f64 (+.f64 (*.f64 -1/240 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (+.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 4)) (*.f64 2/45 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2)))))) (sin.f64 th)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (*.f64 -1/12 (*.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sin.f64 th)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))) (pow.f64 ky 7)) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))))
(fma.f64 (fma.f64 1/12 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (fma.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (*.f64 (sin.f64 th) (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2)))) (*.f64 (*.f64 1/120 (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (*.f64 (*.f64 -1/6 (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))) (pow.f64 ky 3) (fma.f64 (fma.f64 -1/240 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (sin.f64 th)) (fma.f64 -1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2)) (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (+.f64 (/.f64 2/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 4)) (/.f64 2/45 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))))))) (*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (*.f64 (sin.f64 th) (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2)))) -1/12)))) (pow.f64 ky 7) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th))))))
(fma.f64 (fma.f64 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 1/12 (fma.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2)) (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (sin.f64 th))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 th) 1/120)))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/2 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 th) -1/6))) (pow.f64 ky 3) (fma.f64 (fma.f64 (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) -1/240 (fma.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (sin.f64 th)) -1/5040 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 th)) (fma.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2)) (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (+.f64 (/.f64 2/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 4)) (/.f64 2/45 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2)))))) (*.f64 (*.f64 (sin.f64 th) (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2))) -1/12))))) (pow.f64 ky 7) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th))))))
(fma.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2)) (*.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) -1/4))) (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (sin.f64 th)))) (*.f64 (sin.f64 th) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) 1/120) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) 1/12)))) (pow.f64 ky 5) (fma.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/6))) (pow.f64 ky 3) (fma.f64 (+.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (*.f64 (sin.f64 th) (+.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2)) (*.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) -1/4))) -1/12) (*.f64 -1/2 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2)) (*.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) -1/4))) (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (+.f64 (/.f64 2/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 4)) (/.f64 2/45 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))))))))) (*.f64 (sin.f64 th) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) -1/240) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/5040)))) (pow.f64 ky 7) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th))))))
(fma.f64 (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2)) (*.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) -1/4))) (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (sin.f64 th)))) (*.f64 (sin.f64 th) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) 1/120) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) 1/12)))) (pow.f64 ky 5) (fma.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/6))) (pow.f64 ky 3) (fma.f64 (+.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (*.f64 (sin.f64 th) (+.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2)) (*.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) -1/4))) -1/12) (*.f64 -1/2 (fma.f64 -1/2 (-.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 4)) (/.f64 (-.f64 (*.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) 1/4) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (+.f64 (/.f64 2/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 4)) (/.f64 2/45 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))))))))) (*.f64 (sin.f64 th) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) -1/240) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/5040)))) (pow.f64 ky 7) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky (sin.f64 th))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 kx (sin.f64 th)) (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (sin.f64 th))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 (*.f64 1/2 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)))) (*.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 (pow.f64 kx 4) (sin.f64 th))) (sin.f64 th)))
(fma.f64 -1/2 (/.f64 (*.f64 kx (sin.f64 th)) (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (fma.f64 (*.f64 1/2 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)))) (*.f64 (pow.f64 kx 4) (*.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6))))) (+.f64 (sin.f64 th) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))))))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))) (+.f64 (sin.f64 th) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))))))))
(fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (*.f64 (sin.f64 th) (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)) (+.f64 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))) (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)))))) (fma.f64 (*.f64 1/2 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)))) (*.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 (pow.f64 kx 4) (sin.f64 th))) (sin.f64 th))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx (sin.f64 th)) (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (sin.f64 th)) (*.f64 (sin.f64 th) (+.f64 (*.f64 (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))))) (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)) (*.f64 -1/2 (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx (sin.f64 th)) (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (sin.f64 th)) (*.f64 (sin.f64 th) (+.f64 (*.f64 (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))))) (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)) (*.f64 -1/2 (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (fma.f64 -1/2 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 8)) (/.f64 (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4))) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) th)) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 ky) th) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) th)))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) th)) (+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 3))))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 ky) th) (fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 ky) (pow.f64 th 3))))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) th) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) (pow.f64 th 5))))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) th) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5)))))
(fma.f64 (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))) (*.f64 (sin.f64 ky) th) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) th)) (+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 ky) th) (fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) th) (fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (*.f64 1/120 (pow.f64 th 5)))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (*.f64 1/120 (pow.f64 th 5)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2))))))

eval470.0ms (1.1%)

Compiler

Compiled 18961 to 9019 computations (52.4% saved)

prune340.0ms (0.8%)

Pruning

43 alts after pruning (39 fresh and 4 done)

PrunedKeptTotal
New75033783
Fresh9615
Picked101
Done145
Total76143804
Error
0b
Counts
804 → 43
Alt Table
Click to see full alt table
StatusErrorProgram
51.5b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (log.f64 (exp.f64 (sin.f64 kx)))))
48.1b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
45.9b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
16.9b
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sin.f64 th))
51.0b
(*.f64 (sin.f64 ky) (log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
46.3b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
4.1b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
45.9b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
0.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
4.1b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
46.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
52.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
48.3b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
0.3b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th))))
52.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
46.2b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
55.4b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
52.7b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
17.1b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (sin.f64 th))
31.0b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
1.1b
(/.f64 (sin.f64 ky) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) (sin.f64 th)))
24.9b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
47.5b
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
45.9b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
53.4b
(exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
47.7b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
31.5b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
46.5b
(log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
53.8b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
33.6b
(/.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)))
45.9b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
46.4b
(expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
44.8b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
46.1b
(sin.f64 th)
45.9b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
53.2b
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
47.7b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
46.4b
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
53.3b
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
53.6b
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
25.0b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) kx)))
3.9b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.2b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
Compiler

Compiled 1130 to 814 computations (28% saved)

localize35.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.1b
(/.f64 1 (sin.f64 th))
0.3b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th))))
0.3b
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
Compiler

Compiled 45 to 17 computations (62.2% saved)

series16.0ms (0%)

Counts
3 → 76
Calls

21 calls:

TimeVariablePointExpression
2.0ms
th
@0
(/.f64 1 (sin.f64 th))
1.0ms
ky
@0
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th))))
1.0ms
th
@inf
(/.f64 1 (sin.f64 th))
1.0ms
th
@-inf
(/.f64 1 (sin.f64 th))
1.0ms
th
@0
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))

rewrite99.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
617×log-prod_binary64
331×pow-prod-down_binary64
315×pow2_binary64
222×pow1/3_binary64
217×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01237
124537
2315337
Stop Event
node limit
Counts
3 → 119
Calls
Call 1
Inputs
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th))))
(/.f64 1 (sin.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (/.f64 (sin.f64 th) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (sin.f64 th))) (sqrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 (cbrt.f64 (sin.f64 th)) 2)) (cbrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1) (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 (sin.f64 th) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -2)) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (/.f64 1 (sin.f64 th))) (/.f64 (cbrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) -2) (/.f64 (sin.f64 ky) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 2))) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 2))) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) -1/2) (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -1) (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))) -1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (sin.f64 th)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (sin.f64 th))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (sin.f64 th)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) (cbrt.f64 (pow.f64 (sin.f64 th) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 th) -2)) (/.f64 1 (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 th) -1/2) (pow.f64 (sin.f64 th) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) -2) (/.f64 1 (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 th) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 th) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 th) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 th) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 th) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 th)) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 th)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 th) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (sin.f64 th))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 th) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 th) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 th)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 th) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (cbrt.f64 (sin.f64 th)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/2 (log.f64 (sin.f64 th))) 2))))))

simplify124.0ms (0.3%)

Algorithm
egg-herbie
Rules
985×fma-def_binary64
685×associate-*l*_binary64
552×times-frac_binary64
532×associate-/l*_binary64
373×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01983121
16252721
222772528
Stop Event
node limit
Counts
195 → 175
Calls
Call 1
Inputs
(/.f64 (sin.f64 kx) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th))
(+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 1/720 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 th 5))) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(/.f64 1 th)
(+.f64 (/.f64 1 th) (*.f64 1/6 th))
(+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3))))
(+.f64 (*.f64 31/15120 (pow.f64 th 5)) (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
Outputs
(/.f64 (sin.f64 kx) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 th)) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) (/.f64 ky (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 th)) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) (/.f64 ky (sin.f64 th))) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 ky 4) (sin.f64 kx)) (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) (/.f64 ky (sin.f64 th))) (fma.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (pow.f64 ky 6))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) (/.f64 ky (sin.f64 th))) (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (sin.f64 kx) (/.f64 (pow.f64 ky 6) (sin.f64 th)))) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 ky 4) (sin.f64 kx)) (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(+.f64 (fma.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th)) (/.f64 (sin.f64 kx) (sin.f64 th))) (*.f64 (/.f64 1/2 (sin.f64 kx)) (+.f64 (/.f64 (*.f64 ky ky) (sin.f64 th)) (*.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 2))) (/.f64 (pow.f64 ky 6) (sin.f64 th))))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (*.f64 kx kx) (*.f64 (sin.f64 th) (sin.f64 ky))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 th)) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (*.f64 (sin.f64 th) (sin.f64 ky))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (*.f64 (sin.f64 th) (sin.f64 ky))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))) (sin.f64 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 th)) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(fma.f64 (/.f64 1/2 (sin.f64 th)) (*.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 th)) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)
(+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))
(fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th) (*.f64 1/6 (*.f64 th (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 1/6 (*.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (fma.f64 th 1/6 (/.f64 1 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th))))
(fma.f64 -1 (*.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) -7/360) (pow.f64 th 3)) (fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th) (*.f64 1/6 (*.f64 th (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
(-.f64 (fma.f64 1/6 (*.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 th 3))))
(fma.f64 (pow.f64 th 3) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 7/360) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (fma.f64 th 1/6 (/.f64 1 th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 1/720 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 th 5))) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))))
(fma.f64 -1 (*.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) -7/360) (pow.f64 th 3)) (fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th) (fma.f64 -1 (*.f64 (fma.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (fma.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) -7/360) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) 1/720))) (pow.f64 th 5)) (*.f64 1/6 (*.f64 th (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(+.f64 (-.f64 (fma.f64 1/6 (*.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 th 3)))) (*.f64 (fma.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -1/5040 (fma.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 1/720 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -7/2160))) (neg.f64 (pow.f64 th 5))))
(-.f64 (fma.f64 (pow.f64 th 3) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 7/360) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (fma.f64 th 1/6 (/.f64 1 th)))) (*.f64 (fma.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -1/5040 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -1/540)) (pow.f64 th 5)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (*.f64 (-.f64 (*.f64 (/.f64 1/120 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 ky 5))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(+.f64 (fma.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 -1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))) (pow.f64 ky 7) (*.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))) (fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (-.f64 (*.f64 (/.f64 1/120 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 ky 5) (fma.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 (/.f64 1/120 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6))))) (pow.f64 ky 7) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2))))) (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)) (neg.f64 (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (/.f64 (*.f64 (*.f64 (sin.f64 th) 1/2) (-.f64 2/45 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))))) (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)))) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (*.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky))))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)))))
(fma.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky))))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(/.f64 1 th)
(+.f64 (/.f64 1 th) (*.f64 1/6 th))
(+.f64 (/.f64 1 th) (*.f64 th 1/6))
(fma.f64 th 1/6 (/.f64 1 th))
(+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3))))
(+.f64 (/.f64 1 th) (fma.f64 1/6 th (*.f64 (pow.f64 th 3) 7/360)))
(+.f64 (/.f64 1 th) (fma.f64 th 1/6 (*.f64 (pow.f64 th 3) 7/360)))
(fma.f64 (pow.f64 th 3) 7/360 (fma.f64 th 1/6 (/.f64 1 th)))
(+.f64 (*.f64 31/15120 (pow.f64 th 5)) (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(fma.f64 31/15120 (pow.f64 th 5) (+.f64 (/.f64 1 th) (fma.f64 1/6 th (*.f64 (pow.f64 th 3) 7/360))))
(+.f64 (fma.f64 th 1/6 (*.f64 (pow.f64 th 3) 7/360)) (fma.f64 (pow.f64 th 5) 31/15120 (/.f64 1 th)))
(fma.f64 (pow.f64 th 5) 31/15120 (fma.f64 (pow.f64 th 3) 7/360 (fma.f64 th 1/6 (/.f64 1 th))))

localize19.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 kx)
0.2b
(/.f64 (sin.f64 ky) (sin.f64 kx))
0.2b
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
Compiler

Compiled 22 to 7 computations (68.2% saved)

series18.0ms (0%)

Counts
2 → 44
Calls

15 calls:

TimeVariablePointExpression
1.0ms
th
@0
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
1.0ms
kx
@0
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
1.0ms
ky
@inf
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
1.0ms
kx
@0
(/.f64 (sin.f64 ky) (sin.f64 kx))
1.0ms
kx
@inf
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))

rewrite58.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
871×pow1_binary64
800×add-log-exp_binary64
800×log1p-expm1-u_binary64
800×expm1-log1p-u_binary64
781×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
116319
2212019
Stop Event
node limit
Counts
2 → 53
Calls
Call 1
Inputs
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (sin.f64 kx))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 th (sin.f64 ky)) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 th (sin.f64 ky))) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 th (sin.f64 ky)) 1) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 th (sin.f64 ky)) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 ky)) th) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 th (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 th) (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 th 3) (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 th 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) 2) (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (/.f64 (sin.f64 ky) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (sin.f64 kx))) (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (sin.f64 kx))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))))

simplify54.0ms (0.1%)

Algorithm
egg-herbie
Rules
591×distribute-rgt-in_binary64
589×fma-def_binary64
563×distribute-lft-in_binary64
483×fma-neg_binary64
349×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
094779
1289765
2914729
33813695
Stop Event
node limit
Counts
97 → 84
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th)))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) th)) (*.f64 -1/5040 (*.f64 (sin.f64 ky) th)))) (pow.f64 kx 5))) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 ky (sin.f64 kx))
(+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))
(+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx))) (+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))))
(/.f64 (sin.f64 ky) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky)))) (+.f64 (*.f64 1/720 (sin.f64 ky)) (*.f64 -1/5040 (sin.f64 ky)))) (pow.f64 kx 5))) (/.f64 (sin.f64 ky) kx))))
Outputs
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 ky (/.f64 th (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (/.f64 ky (/.f64 (sin.f64 kx) th)))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (*.f64 (/.f64 ky (sin.f64 kx)) th))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (*.f64 ky (/.f64 th (sin.f64 kx))))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (/.f64 ky (/.f64 (sin.f64 kx) th))))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 5)) (*.f64 (/.f64 ky (sin.f64 kx)) th)))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 th (sin.f64 kx))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
(fma.f64 (/.f64 ky (sin.f64 kx)) th (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) (*.f64 1/120 (pow.f64 ky 5)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (fma.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx)) (/.f64 ky (/.f64 (sin.f64 kx) th)))))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 5)) (fma.f64 -1/5040 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 7)) (*.f64 (/.f64 ky (sin.f64 kx)) th))))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 th (sin.f64 kx))) (fma.f64 -1/5040 (*.f64 (pow.f64 ky 7) (/.f64 th (sin.f64 kx))) (*.f64 ky (/.f64 th (sin.f64 kx))))))
(+.f64 (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 ky (*.f64 -1/5040 (pow.f64 ky 7)))) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) (*.f64 1/120 (pow.f64 ky 5)))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 (sin.f64 ky) (/.f64 kx th))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (/.f64 (sin.f64 ky) (/.f64 kx th)))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(*.f64 th (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx)))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (pow.f64 kx 3)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (/.f64 (sin.f64 ky) (/.f64 kx th))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (/.f64 (*.f64 (sin.f64 ky) th) kx)) (*.f64 (*.f64 (sin.f64 ky) th) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (pow.f64 kx 3) (*.f64 th (*.f64 (sin.f64 ky) 7/360)) (*.f64 th (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx))))
(*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th)))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) th)) (*.f64 -1/5040 (*.f64 (sin.f64 ky) th)))) (pow.f64 kx 5))) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (pow.f64 kx 3)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (fma.f64 -1 (*.f64 (fma.f64 1/6 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (*.f64 (*.f64 (sin.f64 ky) th) 1/840)) (pow.f64 kx 5)) (/.f64 (sin.f64 ky) (/.f64 kx th)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (-.f64 (/.f64 (*.f64 (sin.f64 ky) th) kx) (*.f64 (fma.f64 (*.f64 (sin.f64 ky) th) 1/840 (*.f64 (*.f64 (sin.f64 ky) th) -7/2160)) (pow.f64 kx 5)))) (*.f64 (*.f64 (sin.f64 ky) th) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (pow.f64 kx 3) (*.f64 th (*.f64 (sin.f64 ky) 7/360)) (fma.f64 (*.f64 (*.f64 (sin.f64 ky) th) -31/15120) (neg.f64 (pow.f64 kx 5)) (*.f64 th (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx)))))
(+.f64 (*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))) (*.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 ky) th) 31/15120)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 ky (sin.f64 kx))
(+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))
(+.f64 (/.f64 ky (sin.f64 kx)) (/.f64 (*.f64 -1/6 (pow.f64 ky 3)) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (/.f64 ky (sin.f64 kx)))
(+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(+.f64 (/.f64 ky (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (/.f64 (*.f64 -1/6 (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 ky (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)))))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (/.f64 ky (sin.f64 kx))))
(+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx))) (+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))))
(fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx)) (+.f64 (/.f64 ky (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (/.f64 (*.f64 -1/6 (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)))) (fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx)) (/.f64 ky (sin.f64 kx))))
(fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx))
(fma.f64 1/6 (*.f64 (sin.f64 ky) kx) (/.f64 (sin.f64 ky) kx))
(fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx)))
(fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) -7/360)) (fma.f64 1/6 (*.f64 (sin.f64 ky) kx) (/.f64 (sin.f64 ky) kx)))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) kx) (/.f64 (sin.f64 ky) kx)) (*.f64 (sin.f64 ky) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (fma.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) 7/360) (/.f64 (sin.f64 ky) kx)))
(+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky)))) (+.f64 (*.f64 1/720 (sin.f64 ky)) (*.f64 -1/5040 (sin.f64 ky)))) (pow.f64 kx 5))) (/.f64 (sin.f64 ky) kx))))
(fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) -7/360)) (fma.f64 1/6 (*.f64 (sin.f64 ky) kx) (fma.f64 -1 (*.f64 (pow.f64 kx 5) (fma.f64 1/6 (*.f64 (sin.f64 ky) -7/360) (*.f64 (sin.f64 ky) 1/840))) (/.f64 (sin.f64 ky) kx))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) kx) (-.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (pow.f64 kx 5) (fma.f64 (sin.f64 ky) 1/840 (*.f64 (sin.f64 ky) -7/2160))))) (*.f64 (sin.f64 ky) (*.f64 -7/360 (pow.f64 kx 3))))
(-.f64 (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (fma.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) 7/360) (/.f64 (sin.f64 ky) kx))) (*.f64 (pow.f64 kx 5) (*.f64 (sin.f64 ky) -31/15120)))
(+.f64 (fma.f64 (pow.f64 kx 5) (*.f64 (sin.f64 ky) 31/15120) (/.f64 (sin.f64 ky) kx)) (*.f64 (sin.f64 ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))

localize12.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 kx)
0.2b
(/.f64 (sin.f64 kx) (sin.f64 th))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
Compiler

Compiled 25 to 8 computations (68% saved)

series6.0ms (0%)

Counts
2 → 44
Calls

15 calls:

TimeVariablePointExpression
1.0ms
th
@0
(/.f64 (sin.f64 kx) (sin.f64 th))
1.0ms
kx
@0
(/.f64 (sin.f64 kx) (sin.f64 th))
1.0ms
th
@-inf
(/.f64 (sin.f64 kx) (sin.f64 th))
1.0ms
th
@inf
(/.f64 (sin.f64 kx) (sin.f64 th))
1.0ms
kx
@-inf
(/.f64 (sin.f64 kx) (sin.f64 th))

rewrite70.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
526×log-prod_binary64
417×exp-prod_binary64
265×pow-prod-down_binary64
261×pow2_binary64
183×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
118821
2258721
Stop Event
node limit
Counts
2 → 110
Calls
Call 1
Inputs
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (sin.f64 kx) (sin.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sin.f64 kx)) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 kx)) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) -2) (/.f64 (sin.f64 ky) (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -2))) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -2))) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) -1/2) (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) 1) (/.f64 (sin.f64 th) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 1) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (cbrt.f64 (pow.f64 (sin.f64 th) 2))) (cbrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (sin.f64 th))) (sqrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 ky)) 1) (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 ky)) 1) (*.f64 (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 kx) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 kx) (/.f64 1 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -2)) (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) (*.f64 (cbrt.f64 (sin.f64 kx)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (sqrt.f64 (sin.f64 kx)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 kx)) (/.f64 1 (neg.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 th)) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) 1) (/.f64 (sqrt.f64 (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) -2) (/.f64 (sin.f64 kx) (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) (cbrt.f64 (pow.f64 (sin.f64 th) 2))) (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (cbrt.f64 (pow.f64 (sin.f64 th) 2))) (/.f64 (sqrt.f64 (sin.f64 kx)) (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 th) -1/2) (/.f64 (sin.f64 kx) (sqrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) (sqrt.f64 (sin.f64 th))) (/.f64 (cbrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 kx) 3) (pow.f64 (sin.f64 th) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))) 2)) (cbrt.f64 (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 kx) 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 kx)) 1) (log.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 (sin.f64 th)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 kx)) 1) (*.f64 (log.f64 (sin.f64 th)) 1)))))))

simplify62.0ms (0.1%)

Algorithm
egg-herbie
Rules
641×fma-def_binary64
567×distribute-rgt-in_binary64
440×associate-*r*_binary64
436×associate-*l*_binary64
410×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0113998
1359961
21192917
35035843
Stop Event
node limit
Counts
154 → 149
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky))))))))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 kx (sin.f64 th))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th))) (/.f64 kx (sin.f64 th)))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 kx 5) (sin.f64 th))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th))) (/.f64 kx (sin.f64 th))))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 kx 5) (sin.f64 th))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th))) (+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 kx 7) (sin.f64 th))) (/.f64 kx (sin.f64 th)))))
(/.f64 (sin.f64 kx) th)
(+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th)))
(+.f64 (/.f64 (sin.f64 kx) th) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 kx) th)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 kx)) (*.f64 1/120 (sin.f64 kx))) (pow.f64 th 3)))))
(+.f64 (/.f64 (sin.f64 kx) th) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 kx) th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (sin.f64 kx)) (+.f64 (*.f64 1/720 (sin.f64 kx)) (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 kx)) (*.f64 1/120 (sin.f64 kx)))))) (pow.f64 th 5))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 kx)) (*.f64 1/120 (sin.f64 kx))) (pow.f64 th 3))))))
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 3)))))
(fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (*.f64 -1/6 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 3))))))
(+.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (fma.f64 1/120 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 5)) (/.f64 (*.f64 (*.f64 -1/6 (sin.f64 th)) (pow.f64 ky 3)) (sin.f64 kx))))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (fma.f64 -1/5040 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 7))) (fma.f64 1/120 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (*.f64 -1/6 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 3)))))))
(+.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (fma.f64 -1/5040 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 7))) (fma.f64 1/120 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 5)) (/.f64 (*.f64 (*.f64 -1/6 (sin.f64 th)) (pow.f64 ky 3)) (sin.f64 kx)))))
(fma.f64 -1/5040 (*.f64 (pow.f64 ky 7) (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))))))
(+.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6))))
(*.f64 (sin.f64 th) (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (*.f64 kx 1/6))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360) (pow.f64 kx 3)) (+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))) (*.f64 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) -7/360)) (pow.f64 kx 3)))
(fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 7/360) (*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6)))))
(fma.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky))))))))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360) (pow.f64 kx 3)) (fma.f64 -1 (*.f64 (pow.f64 kx 5) (fma.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky)) (fma.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360))))) (+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky))))))
(-.f64 (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))) (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/2160) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 1/840)))) (*.f64 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) -7/360)) (pow.f64 kx 3)))
(-.f64 (*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6)))) (fma.f64 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) -7/360)) (pow.f64 kx 3) (*.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -31/15120))))
(fma.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 31/15120) (fma.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 3))) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th)))
(fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 3)) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))
(fma.f64 1/120 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/6 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 3))) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))))
(fma.f64 1/120 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 3)) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (/.f64 (pow.f64 th 5) (sin.f64 kx)) (sin.f64 ky)) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 1/120 (pow.f64 th 5)))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))))
(fma.f64 1/120 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/6 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 3))) (fma.f64 -1/5040 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 7))) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th)))))
(fma.f64 1/120 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 3)) (fma.f64 -1/5040 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 7)) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (/.f64 (pow.f64 th 5) (sin.f64 kx)) (sin.f64 ky)) (fma.f64 -1/5040 (*.f64 (pow.f64 th 7) (/.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))))))
(+.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (*.f64 1/120 (pow.f64 th 5)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 kx (sin.f64 th))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th))) (/.f64 kx (sin.f64 th)))
(fma.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th)) (/.f64 kx (sin.f64 th)))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 kx 5) (sin.f64 th))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th))) (/.f64 kx (sin.f64 th))))
(fma.f64 1/120 (/.f64 (pow.f64 kx 5) (sin.f64 th)) (fma.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th)) (/.f64 kx (sin.f64 th))))
(fma.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th)) (fma.f64 1/120 (/.f64 (pow.f64 kx 5) (sin.f64 th)) (/.f64 kx (sin.f64 th))))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 kx 5) (sin.f64 th))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th))) (+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 kx 7) (sin.f64 th))) (/.f64 kx (sin.f64 th)))))
(fma.f64 1/120 (/.f64 (pow.f64 kx 5) (sin.f64 th)) (fma.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th)) (fma.f64 -1/5040 (/.f64 (pow.f64 kx 7) (sin.f64 th)) (/.f64 kx (sin.f64 th)))))
(fma.f64 -1/6 (/.f64 (pow.f64 kx 3) (sin.f64 th)) (fma.f64 1/120 (/.f64 (pow.f64 kx 5) (sin.f64 th)) (fma.f64 -1/5040 (/.f64 (pow.f64 kx 7) (sin.f64 th)) (/.f64 kx (sin.f64 th)))))
(/.f64 (sin.f64 kx) th)
(+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th)))
(+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 th (sin.f64 kx))))
(fma.f64 1/6 (*.f64 th (sin.f64 kx)) (/.f64 (sin.f64 kx) th))
(fma.f64 th (*.f64 (sin.f64 kx) 1/6) (/.f64 (sin.f64 kx) th))
(+.f64 (/.f64 (sin.f64 kx) th) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 kx) th)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 kx)) (*.f64 1/120 (sin.f64 kx))) (pow.f64 th 3)))))
(+.f64 (/.f64 (sin.f64 kx) th) (fma.f64 1/6 (*.f64 th (sin.f64 kx)) (neg.f64 (*.f64 (pow.f64 th 3) (*.f64 (sin.f64 kx) -7/360)))))
(-.f64 (fma.f64 1/6 (*.f64 th (sin.f64 kx)) (/.f64 (sin.f64 kx) th)) (*.f64 (sin.f64 kx) (*.f64 -7/360 (pow.f64 th 3))))
(+.f64 (/.f64 (sin.f64 kx) th) (*.f64 (sin.f64 kx) (-.f64 (*.f64 th 1/6) (*.f64 (pow.f64 th 3) -7/360))))
(+.f64 (/.f64 (sin.f64 kx) th) (*.f64 th (*.f64 (sin.f64 kx) (-.f64 1/6 (*.f64 -7/360 (*.f64 th th))))))
(+.f64 (/.f64 (sin.f64 kx) th) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 kx) th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (sin.f64 kx)) (+.f64 (*.f64 1/720 (sin.f64 kx)) (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 kx)) (*.f64 1/120 (sin.f64 kx)))))) (pow.f64 th 5))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 kx)) (*.f64 1/120 (sin.f64 kx))) (pow.f64 th 3))))))
(+.f64 (/.f64 (sin.f64 kx) th) (fma.f64 1/6 (*.f64 th (sin.f64 kx)) (fma.f64 -1 (*.f64 (pow.f64 th 5) (fma.f64 -1/5040 (sin.f64 kx) (fma.f64 1/720 (sin.f64 kx) (*.f64 1/6 (*.f64 (sin.f64 kx) -7/360))))) (neg.f64 (*.f64 (pow.f64 th 3) (*.f64 (sin.f64 kx) -7/360))))))
(+.f64 (fma.f64 1/6 (*.f64 th (sin.f64 kx)) (/.f64 (sin.f64 kx) th)) (neg.f64 (fma.f64 (pow.f64 th 5) (+.f64 (*.f64 (sin.f64 kx) -7/2160) (*.f64 (sin.f64 kx) 1/840)) (*.f64 (sin.f64 kx) (*.f64 -7/360 (pow.f64 th 3))))))
(+.f64 (/.f64 (sin.f64 kx) th) (-.f64 (*.f64 (sin.f64 kx) (-.f64 (*.f64 th 1/6) (*.f64 (pow.f64 th 3) -7/360))) (*.f64 (pow.f64 th 5) (*.f64 (sin.f64 kx) -31/15120))))
(+.f64 (/.f64 (sin.f64 kx) th) (fma.f64 (pow.f64 th 5) (*.f64 (sin.f64 kx) 31/15120) (*.f64 th (*.f64 (sin.f64 kx) (-.f64 1/6 (*.f64 -7/360 (*.f64 th th)))))))

localize20.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sin.f64 th) kx)
0.1b
(/.f64 (sin.f64 th) kx)
0.3b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
0.3b
(*.f64 1/6 (*.f64 (sin.f64 th) kx))
Compiler

Compiled 50 to 17 computations (66% saved)

series21.0ms (0%)

Counts
4 → 32
Calls

27 calls:

TimeVariablePointExpression
4.0ms
kx
@inf
(/.f64 (sin.f64 th) kx)
2.0ms
th
@-inf
(*.f64 1/6 (*.f64 (sin.f64 th) kx))
1.0ms
ky
@inf
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
1.0ms
ky
@0
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
1.0ms
th
@-inf
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))

rewrite83.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
712×log-prod_binary64
403×fma-def_binary64
354×pow2_binary64
249×pow1/3_binary64
241×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01241
126241
2371941
Stop Event
node limit
Counts
4 → 145
Calls
Call 1
Inputs
(*.f64 1/6 (*.f64 (sin.f64 th) kx))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(/.f64 (sin.f64 th) kx)
(*.f64 (sin.f64 th) kx)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 kx) (*.f64 1/6 (sin.f64 th)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 kx) (*.f64 1/6 (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 kx) (*.f64 1/6 (sin.f64 th))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 kx) (*.f64 1/6 (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/216 (pow.f64 (*.f64 (sin.f64 th) kx) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 kx) (*.f64 1/6 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 1/216 (pow.f64 (*.f64 (sin.f64 th) kx) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) 1) (*.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) 3) (pow.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) 2) (-.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) 2) (*.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) 2) (pow.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) 2)) (-.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 1/216 (pow.f64 (*.f64 (sin.f64 th) kx) 3) (pow.f64 (/.f64 (sin.f64 th) kx) 3)) (sin.f64 ky)) (fma.f64 (/.f64 (sin.f64 th) kx) (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2)) (pow.f64 (/.f64 (sin.f64 th) kx) 2)) (sin.f64 ky)) (-.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (fma.f64 1/216 (pow.f64 (*.f64 (sin.f64 th) kx) 3) (pow.f64 (/.f64 (sin.f64 th) kx) 3))) (fma.f64 (/.f64 (sin.f64 th) kx) (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (-.f64 (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2)) (pow.f64 (/.f64 (sin.f64 th) kx) 2))) (-.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)) 3) (pow.f64 (sin.f64 ky) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (exp.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/6 (*.f64 (*.f64 (sin.f64 th) kx) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 th) (*.f64 (/.f64 1 kx) (sin.f64 ky)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 th) kx) (*.f64 1/6 (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) kx)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) 2) (*.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) (sin.f64 ky)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) 2) (*.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) kx)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) (*.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) (sin.f64 ky)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (*.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) 1 (*.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) 2) (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky))) 2) (cbrt.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky))) (sqrt.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))) (*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (sqrt.f64 (sin.f64 ky))) (*.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (sin.f64 th) kx))) (*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (sin.f64 th) kx))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) (sqrt.f64 (sin.f64 ky))) (*.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) (sqrt.f64 (sin.f64 ky))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 kx) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) 1/6) (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) kx)) 1/6 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) 2)) (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))) (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (*.f64 1/6 (sin.f64 th))) kx (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) 2)) (cbrt.f64 (/.f64 (sin.f64 th) kx)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (sin.f64 th) kx))) (sqrt.f64 (/.f64 (sin.f64 th) kx)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (sin.f64 th) kx) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (sin.f64 ky)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (sin.f64 th) kx) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 th) kx))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) kx))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) kx)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 th) kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 1 kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) kx) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 th) kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) 2) (cbrt.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (*.f64 (cbrt.f64 (sin.f64 th)) (/.f64 1 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) (sqrt.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (neg.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 kx) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 th)) kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) 1) (/.f64 (sqrt.f64 (sin.f64 th)) kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 kx) 2)) (/.f64 (sin.f64 th) (cbrt.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (pow.f64 (cbrt.f64 kx) 2)) (cbrt.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (pow.f64 (cbrt.f64 kx) 2)) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 kx)) (/.f64 (sin.f64 th) (sqrt.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (sqrt.f64 kx)) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) kx) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) kx) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) kx) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 kx (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 kx (sin.f64 th)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (neg.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) kx) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) kx)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 th) kx))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 kx) (sin.f64 th))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 kx) (sin.f64 th)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 th) kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 th) kx) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) kx) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) kx) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) kx)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 th) kx)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 kx 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 kx 3) (pow.f64 (sin.f64 th) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 kx) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) kx) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 kx 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 kx 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 th) kx)) 1))))))

simplify74.0ms (0.2%)

Algorithm
egg-herbie
Rules
694×fma-def_binary64
583×distribute-rgt-in_binary64
466×associate-*l*_binary64
441×associate-*r*_binary64
405×distribute-lft-out_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0103928
1322834
21052717
34550709
46804691
Stop Event
node limit
Counts
177 → 190
Calls
Call 1
Inputs
(*.f64 1/6 (*.f64 th kx))
(+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx))))
(+.f64 (*.f64 -1/30240 (*.f64 (pow.f64 th 7) kx)) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx)))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 ky 7) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky))))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 (+.f64 (*.f64 1/720 kx) (*.f64 1/120 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 (+.f64 (*.f64 1/720 kx) (*.f64 1/120 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (-.f64 (*.f64 -1/30240 kx) (*.f64 1/5040 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(/.f64 th kx)
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (+.f64 (/.f64 th kx) (*.f64 1/120 (/.f64 (pow.f64 th 5) kx))))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 th 7) kx)) (+.f64 (/.f64 th kx) (*.f64 1/120 (/.f64 (pow.f64 th 5) kx)))))
(*.f64 kx th)
(+.f64 (*.f64 kx th) (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 kx th) (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 kx th) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx)) (*.f64 -1/5040 (*.f64 (pow.f64 th 7) kx)))))
Outputs
(*.f64 1/6 (*.f64 th kx))
(*.f64 (*.f64 1/6 th) kx)
(+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx)))
(fma.f64 1/6 (*.f64 th kx) (*.f64 -1/36 (*.f64 kx (pow.f64 th 3))))
(*.f64 kx (+.f64 (*.f64 1/6 th) (*.f64 -1/36 (pow.f64 th 3))))
(*.f64 kx (fma.f64 -1/36 (pow.f64 th 3) (*.f64 1/6 th)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx))))
(fma.f64 1/720 (*.f64 kx (pow.f64 th 5)) (fma.f64 1/6 (*.f64 th kx) (*.f64 -1/36 (*.f64 kx (pow.f64 th 3)))))
(fma.f64 1/720 (*.f64 kx (pow.f64 th 5)) (*.f64 kx (+.f64 (*.f64 1/6 th) (*.f64 -1/36 (pow.f64 th 3)))))
(*.f64 kx (+.f64 (fma.f64 1/720 (pow.f64 th 5) (*.f64 1/6 th)) (*.f64 -1/36 (pow.f64 th 3))))
(*.f64 kx (+.f64 (*.f64 -1/36 (pow.f64 th 3)) (fma.f64 1/720 (pow.f64 th 5) (*.f64 1/6 th))))
(+.f64 (*.f64 -1/30240 (*.f64 (pow.f64 th 7) kx)) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx)))))
(fma.f64 -1/30240 (*.f64 kx (pow.f64 th 7)) (fma.f64 1/720 (*.f64 kx (pow.f64 th 5)) (fma.f64 1/6 (*.f64 th kx) (*.f64 -1/36 (*.f64 kx (pow.f64 th 3))))))
(fma.f64 -1/30240 (*.f64 kx (pow.f64 th 7)) (fma.f64 1/720 (*.f64 kx (pow.f64 th 5)) (*.f64 kx (+.f64 (*.f64 1/6 th) (*.f64 -1/36 (pow.f64 th 3))))))
(*.f64 kx (+.f64 (fma.f64 -1/36 (pow.f64 th 3) (*.f64 1/6 th)) (fma.f64 -1/30240 (pow.f64 th 7) (*.f64 1/720 (pow.f64 th 5)))))
(*.f64 kx (+.f64 (fma.f64 -1/30240 (pow.f64 th 7) (*.f64 1/720 (pow.f64 th 5))) (fma.f64 -1/36 (pow.f64 th 3) (*.f64 1/6 th))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) ky)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 3)) (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) ky))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 5)) (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) ky)))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 3)) (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 (fma.f64 -1/6 (pow.f64 ky 3) (*.f64 1/120 (pow.f64 ky 5))) ky))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) (fma.f64 1/120 (pow.f64 ky 5) ky)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 ky 7) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 3)) (fma.f64 -1/5040 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 7)) (fma.f64 1/120 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 5)) (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) ky))))
(+.f64 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))) (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 (fma.f64 1/120 (pow.f64 ky 5) ky) (fma.f64 -1/6 (pow.f64 ky 3) (*.f64 -1/5040 (pow.f64 ky 7)))))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 (fma.f64 -1/5040 (pow.f64 ky 7) (*.f64 1/120 (pow.f64 ky 5))) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky)))
(*.f64 th (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th)))
(fma.f64 (-.f64 (*.f64 kx -1/36) (/.f64 1/6 kx)) (*.f64 (pow.f64 th 3) (sin.f64 ky)) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky))))
(fma.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky)) (*.f64 (pow.f64 th 3) (*.f64 (sin.f64 ky) (fma.f64 kx -1/36 (/.f64 -1/6 kx)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx))) (*.f64 (pow.f64 th 3) (fma.f64 kx -1/36 (/.f64 -1/6 kx)))))
(*.f64 (*.f64 th (sin.f64 ky)) (+.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 (fma.f64 kx -1/36 (/.f64 -1/6 kx)) (*.f64 th th))))
(+.f64 (*.f64 (+.f64 (*.f64 1/720 kx) (*.f64 1/120 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))))
(fma.f64 (fma.f64 1/720 kx (/.f64 1/120 kx)) (*.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 (-.f64 (*.f64 kx -1/36) (/.f64 1/6 kx)) (*.f64 (pow.f64 th 3) (sin.f64 ky)) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky)))))
(fma.f64 (fma.f64 kx 1/720 (/.f64 1/120 kx)) (*.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky)) (*.f64 (pow.f64 th 3) (*.f64 (sin.f64 ky) (fma.f64 kx -1/36 (/.f64 -1/6 kx))))))
(fma.f64 (pow.f64 th 3) (*.f64 (sin.f64 ky) (fma.f64 kx -1/36 (/.f64 -1/6 kx))) (*.f64 (sin.f64 ky) (+.f64 (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx))) (*.f64 (pow.f64 th 5) (fma.f64 kx 1/720 (/.f64 1/120 kx))))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx))) (+.f64 (*.f64 (pow.f64 th 3) (fma.f64 kx -1/36 (/.f64 -1/6 kx))) (*.f64 (pow.f64 th 5) (fma.f64 kx 1/720 (/.f64 1/120 kx))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/720 kx) (*.f64 1/120 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (-.f64 (*.f64 -1/30240 kx) (*.f64 1/5040 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th)))))
(fma.f64 (fma.f64 1/720 kx (/.f64 1/120 kx)) (*.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 (-.f64 (*.f64 kx -1/36) (/.f64 1/6 kx)) (*.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 (-.f64 (*.f64 kx -1/30240) (/.f64 1/5040 kx)) (*.f64 (pow.f64 th 7) (sin.f64 ky)) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky))))))
(fma.f64 (fma.f64 kx 1/720 (/.f64 1/120 kx)) (*.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 (fma.f64 kx -1/36 (/.f64 -1/6 kx)) (*.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky)) (*.f64 (pow.f64 th 7) (*.f64 (sin.f64 ky) (fma.f64 kx -1/30240 (/.f64 -1/5040 kx)))))))
(+.f64 (*.f64 (sin.f64 ky) (+.f64 (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx))) (*.f64 (pow.f64 th 7) (fma.f64 kx -1/30240 (/.f64 -1/5040 kx))))) (*.f64 (sin.f64 ky) (+.f64 (*.f64 (pow.f64 th 3) (fma.f64 kx -1/36 (/.f64 -1/6 kx))) (*.f64 (pow.f64 th 5) (fma.f64 kx 1/720 (/.f64 1/120 kx))))))
(*.f64 (sin.f64 ky) (+.f64 (+.f64 (*.f64 (pow.f64 th 7) (fma.f64 kx -1/30240 (/.f64 -1/5040 kx))) (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx)))) (+.f64 (*.f64 (pow.f64 th 3) (fma.f64 kx -1/36 (/.f64 -1/6 kx))) (*.f64 (pow.f64 th 5) (fma.f64 kx 1/720 (/.f64 1/120 kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(/.f64 th kx)
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (/.f64 th kx))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (+.f64 (/.f64 th kx) (*.f64 1/120 (/.f64 (pow.f64 th 5) kx))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (/.f64 th kx)) (/.f64 (*.f64 1/120 (pow.f64 th 5)) kx))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (fma.f64 1/120 (/.f64 (pow.f64 th 5) kx) (/.f64 th kx)))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 th 7) kx)) (+.f64 (/.f64 th kx) (*.f64 1/120 (/.f64 (pow.f64 th 5) kx)))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) kx) (+.f64 (/.f64 th kx) (/.f64 (*.f64 1/120 (pow.f64 th 5)) kx))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) kx) (fma.f64 1/120 (/.f64 (pow.f64 th 5) kx) (/.f64 th kx))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (fma.f64 1/120 (/.f64 (pow.f64 th 5) kx) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) kx) (/.f64 th kx))))
(*.f64 kx th)
(*.f64 th kx)
(+.f64 (*.f64 kx th) (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx)))
(fma.f64 kx th (*.f64 (*.f64 kx (pow.f64 th 3)) -1/6))
(*.f64 kx (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(*.f64 kx (fma.f64 (pow.f64 th 3) -1/6 th))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 kx th) (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx))))
(fma.f64 1/120 (*.f64 kx (pow.f64 th 5)) (fma.f64 kx th (*.f64 (*.f64 kx (pow.f64 th 3)) -1/6)))
(fma.f64 (*.f64 kx (pow.f64 th 5)) 1/120 (*.f64 kx (+.f64 th (*.f64 (pow.f64 th 3) -1/6))))
(*.f64 kx (+.f64 (fma.f64 (pow.f64 th 3) -1/6 th) (*.f64 (pow.f64 th 5) 1/120)))
(*.f64 kx (+.f64 (*.f64 (pow.f64 th 5) 1/120) (fma.f64 (pow.f64 th 3) -1/6 th)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 kx th) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx)) (*.f64 -1/5040 (*.f64 (pow.f64 th 7) kx)))))
(fma.f64 1/120 (*.f64 kx (pow.f64 th 5)) (fma.f64 kx th (fma.f64 -1/6 (*.f64 kx (pow.f64 th 3)) (*.f64 (*.f64 kx (pow.f64 th 7)) -1/5040))))
(fma.f64 (*.f64 kx (pow.f64 th 5)) 1/120 (fma.f64 th kx (*.f64 kx (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 7) -1/5040)))))
(*.f64 kx (+.f64 (fma.f64 (pow.f64 th 3) -1/6 (*.f64 (pow.f64 th 7) -1/5040)) (fma.f64 (pow.f64 th 5) 1/120 th)))
(*.f64 kx (+.f64 (fma.f64 (pow.f64 th 5) 1/120 th) (fma.f64 (pow.f64 th 3) -1/6 (*.f64 (pow.f64 th 7) -1/5040))))

localize20.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
0.2b
(/.f64 (sin.f64 kx) (sin.f64 th))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
0.3b
(log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
Compiler

Compiled 44 to 10 computations (77.3% saved)

series9.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
ky
@0
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
1.0ms
th
@0
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
1.0ms
ky
@0
(log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
0.0ms
kx
@inf
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
0.0ms
ky
@inf
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))

rewrite71.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
564×log-prod_binary64
447×exp-prod_binary64
284×pow-prod-down_binary64
281×pow2_binary64
197×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01128
121028
2279528
Stop Event
node limit
Counts
2 → 104
Calls
Call 1
Inputs
(log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log1p.f64 (pow.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2) (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2))) (log.f64 (-.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 2)) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (sin.f64 kx)) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 kx)) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) -2) (/.f64 (sin.f64 ky) (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -2))) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -2))) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) -1/2) (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) 1) (/.f64 (sin.f64 th) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 1) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 (cbrt.f64 (sin.f64 th)) 2)) (cbrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (sin.f64 th))) (sqrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (/.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 ky)) (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))) (sqrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) 1) (/.f64 (sin.f64 kx) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -2))) (cbrt.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) (pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 2) (cbrt.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) (sqrt.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))) 3) 1) (+.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))) 2) (+.f64 1 (*.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))) 2) 1) (+.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))) 2)) (cbrt.f64 (log.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (sqrt.f64 (log.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx)))) 2) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx)))) (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx)))) -1)))))

simplify82.0ms (0.2%)

Algorithm
egg-herbie
Rules
598×fma-def_binary64
592×associate-*r*_binary64
573×fma-neg_binary64
566×associate-*l*_binary64
428×times-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01401653
14301628
213731584
371971578
Stop Event
node limit
Counts
176 → 143
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky))))))))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 2))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 2))) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 2))) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (sin.f64 th) 4) (pow.f64 (sin.f64 kx) 4))) (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 4)) (*.f64 (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 th 2)) (pow.f64 (sin.f64 kx) 2))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)))) (pow.f64 th 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 th 2)) (pow.f64 (sin.f64 kx) 2))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)))) (pow.f64 th 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 th 2)) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/24 (/.f64 (pow.f64 (sin.f64 ky) 4) (pow.f64 (sin.f64 kx) 4)))) (pow.f64 th 4)) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 1/120 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)) (/.f64 (*.f64 (sin.f64 th) 1/120) (/.f64 (sin.f64 kx) (pow.f64 ky 5))))
(fma.f64 1/120 (*.f64 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (sin.f64 th)) (fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 -1/5040 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 7))) (fma.f64 1/120 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(+.f64 (fma.f64 -1/5040 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 7)) (/.f64 (*.f64 (sin.f64 th) 1/120) (/.f64 (sin.f64 kx) (pow.f64 ky 5)))) (fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 -1/5040 (*.f64 (pow.f64 ky 7) (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (sin.f64 th)) (fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360) (pow.f64 kx 3)) (+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 7/360) (*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky))))))))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360) (pow.f64 kx 3)) (fma.f64 -1 (*.f64 (pow.f64 kx 5) (fma.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky)) (fma.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360))))) (+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))))
(-.f64 (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))) (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/2160) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 1/840)))) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (pow.f64 kx 5) (neg.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -31/15120)) (fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 7/360) (*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6))))))
(-.f64 (fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 7/360) (*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6))))) (*.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -31/15120)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 3))) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th)))
(fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 3)) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))
(fma.f64 1/120 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/6 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 3))) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))))
(fma.f64 1/120 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 5)) (fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 3)) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)))
(fma.f64 1/120 (*.f64 (/.f64 (pow.f64 th 5) (sin.f64 kx)) (sin.f64 ky)) (fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))))
(fma.f64 1/120 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/6 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 3))) (fma.f64 -1/5040 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 7))) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th)))))
(fma.f64 1/120 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 5)) (fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 3)) (fma.f64 -1/5040 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 7)) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th))))
(fma.f64 1/120 (*.f64 (/.f64 (pow.f64 th 5) (sin.f64 kx)) (sin.f64 ky)) (fma.f64 -1/5040 (*.f64 (/.f64 (pow.f64 th 7) (sin.f64 kx)) (sin.f64 ky)) (fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 2))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 th) 2) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 ky ky))) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)))
(fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 th) 2) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 ky ky))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 1/2 (*.f64 (*.f64 ky ky) (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2))) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 2))) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3))))
(fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 th) 2) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 ky ky))) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (pow.f64 ky 3) (fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))))))
(fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 th) 2) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 ky ky))) (fma.f64 (pow.f64 ky 3) (fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (pow.f64 ky 3) (fma.f64 1/6 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 3) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (fma.f64 1/2 (*.f64 (*.f64 ky ky) (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2))) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))))
(fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 1/6 (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 3))) (fma.f64 1/2 (*.f64 (*.f64 ky ky) (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2))) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 2))) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (sin.f64 th) 4) (pow.f64 (sin.f64 kx) 4))) (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 4)) (*.f64 (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))))
(+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 th) 2) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 ky ky))) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))) (fma.f64 (fma.f64 1/24 (/.f64 (pow.f64 (sin.f64 th) 4) (pow.f64 (sin.f64 kx) 4)) (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 4) (*.f64 (pow.f64 ky 3) (fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))))))
(+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 th) 2) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 ky ky))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)) (fma.f64 (pow.f64 ky 3) (fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (*.f64 (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2)) (*.f64 1/24 (/.f64 (pow.f64 (sin.f64 th) 4) (pow.f64 (sin.f64 kx) 4)))) (pow.f64 ky 4))))
(fma.f64 1/2 (*.f64 (*.f64 ky ky) (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2))) (fma.f64 (pow.f64 ky 3) (fma.f64 1/6 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 3) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (fma.f64 (fma.f64 1/24 (/.f64 (pow.f64 (sin.f64 th) 4) (pow.f64 (sin.f64 kx) 4)) (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 4) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (*.f64 ky ky) (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 1/6 (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) 3))) (fma.f64 (fma.f64 1/24 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 4) (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 4) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 th 2)) (pow.f64 (sin.f64 kx) 2))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))
(fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 ky) 2) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 th th))) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th)))
(fma.f64 1/2 (*.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (*.f64 th th)) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th))
(fma.f64 1/2 (*.f64 (*.f64 th th) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)))) (pow.f64 th 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 th 2)) (pow.f64 (sin.f64 kx) 2))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))
(fma.f64 (fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)))) (pow.f64 th 3) (fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 ky) 2) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 th th))) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))))
(fma.f64 (pow.f64 th 3) (fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)))) (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (*.f64 th th)) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)))
(fma.f64 (pow.f64 th 3) (fma.f64 1/6 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3) (*.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)))) (fma.f64 1/2 (*.f64 (*.f64 th th) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(fma.f64 (pow.f64 th 3) (fma.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1/6 (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) 3))) (fma.f64 1/2 (*.f64 (*.f64 th th) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)))) (pow.f64 th 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 th 2)) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/24 (/.f64 (pow.f64 (sin.f64 ky) 4) (pow.f64 (sin.f64 kx) 4)))) (pow.f64 th 4)) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))))
(fma.f64 (fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)))) (pow.f64 th 3) (fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 ky) 2) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 th th))) (fma.f64 (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (*.f64 1/24 (/.f64 (pow.f64 (sin.f64 ky) 4) (pow.f64 (sin.f64 kx) 4)))) (pow.f64 th 4) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th)))))
(fma.f64 (pow.f64 th 3) (fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)))) (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (*.f64 th th)) (fma.f64 (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 1/24 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 th 4) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th))))
(fma.f64 (pow.f64 th 3) (fma.f64 1/6 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3) (*.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)))) (fma.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th (fma.f64 1/2 (*.f64 (*.f64 th th) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (*.f64 (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (*.f64 1/24 (/.f64 (pow.f64 (sin.f64 ky) 4) (pow.f64 (sin.f64 kx) 4)))) (pow.f64 th 4)))))
(fma.f64 (pow.f64 th 3) (fma.f64 -1/6 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1/6 (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) 3))) (fma.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th (fma.f64 1/2 (*.f64 (*.f64 th th) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (*.f64 (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (*.f64 1/24 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 4))) (pow.f64 th 4)))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(-.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1)
(expm1.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(expm1.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)))
(expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))

eval414.0ms (0.9%)

Compiler

Compiled 19653 to 7807 computations (60.3% saved)

prune261.0ms (0.6%)

Pruning

72 alts after pruning (65 fresh and 7 done)

PrunedKeptTotal
New962481010
Fresh171734
Picked011
Done268
Total981721053
Error
0b
Counts
1053 → 72
Alt Table
Click to see full alt table
StatusErrorProgram
48.1b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
45.9b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
54.8b
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
58.5b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))))
52.3b
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
16.9b
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sin.f64 th))
58.1b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
4.1b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
46.2b
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
59.4b
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
55.2b
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
54.8b
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
3.9b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
57.9b
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
31.0b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
54.6b
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
4.1b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
45.9b
(/.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
56.3b
(exp.f64 (log.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
0.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
47.8b
(/.f64 (sin.f64 ky) (log1p.f64 (expm1.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))
0.2b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
52.7b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
31.6b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 th)))
31.5b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
46.0b
(/.f64 (sin.f64 ky) (/.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 3) (sin.f64 th)))
33.6b
(/.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)))
54.5b
(*.f64 th (+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
54.2b
(*.f64 ky (/.f64 th (sin.f64 kx)))
46.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
46.3b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
53.9b
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
0.3b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th))))
54.1b
(*.f64 th (/.f64 ky (sin.f64 kx)))
54.4b
(/.f64 (*.f64 ky th) (sin.f64 kx))
52.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
46.3b
(*.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
46.2b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
56.0b
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
53.8b
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))
53.2b
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
46.4b
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
53.2b
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
0.3b
(/.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
55.3b
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
52.9b
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 th (*.f64 (sin.f64 kx) (-.f64 1/6 (*.f64 -7/360 (*.f64 th th)))))))
17.1b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (sin.f64 th))
56.3b
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
45.9b
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
24.9b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
47.5b
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
45.9b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
53.2b
(*.f64 th (/.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
53.8b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
46.4b
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
52.7b
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th))))
46.5b
(log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
53.2b
(*.f64 th (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) -1))
47.7b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
45.9b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
53.3b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
54.8b
(*.f64 (/.f64 th kx) (sin.f64 ky))
44.8b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
46.1b
(sin.f64 th)
45.9b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
58.1b
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
57.3b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
55.1b
(/.f64 (*.f64 (sin.f64 ky) th) kx)
47.7b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
54.7b
(*.f64 th (/.f64 (sin.f64 ky) kx))
55.8b
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
25.0b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) kx)))
Compiler

Compiled 1890 to 1359 computations (28.1% saved)

localize19.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.2b
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.3b
(/.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
0.3b
(/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
Compiler

Compiled 49 to 14 computations (71.4% saved)

series7.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
th
@0
(/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
1.0ms
ky
@0
(/.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
0.0ms
kx
@0
(/.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
0.0ms
th
@0
(/.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
0.0ms
ky
@0
(/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))

rewrite74.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
625×log-prod_binary64
337×pow-prod-down_binary64
321×pow2_binary64
224×pow1/3_binary64
221×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01237
125031
2327631
Stop Event
node limit
Counts
2 → 98
Calls
Call 1
Inputs
(/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) -2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (pow.f64 (cbrt.f64 (sin.f64 th)) 2)) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (cbrt.f64 (sin.f64 th)) 2)) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 th) -1/2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (sqrt.f64 (sin.f64 th))) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 th))) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) -2) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sin.f64 th)) 1) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sin.f64 th)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 (sin.f64 th) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2) (cbrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sqrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) -2) (/.f64 (sin.f64 ky) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2))) (cbrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2))) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (/.f64 1 (sin.f64 th))) (/.f64 (cbrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) -1) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)) (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky)) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) (pow.f64 (sin.f64 ky) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (cbrt.f64 (sin.f64 ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (sin.f64 ky))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1))))))

simplify93.0ms (0.2%)

Algorithm
egg-herbie
Rules
929×fma-def_binary64
674×associate-*l*_binary64
552×times-frac_binary64
531×associate-/l*_binary64
374×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01893066
16042668
222142485
Stop Event
node limit
Counts
170 → 147
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th))
(+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 1/720 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 th 5))) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 kx) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
Outputs
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)
(+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))
(fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))
(fma.f64 1/6 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th))))
(fma.f64 -1 (*.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) -7/360) (pow.f64 th 3)) (fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th))))
(-.f64 (fma.f64 1/6 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 -7/360 (pow.f64 th 3))))
(fma.f64 (pow.f64 th 3) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 7/360) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 1/720 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 th 5))) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))))
(fma.f64 -1 (*.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) -7/360) (pow.f64 th 3)) (fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th) (fma.f64 -1 (*.f64 (fma.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (fma.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) -7/360) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) 1/720))) (pow.f64 th 5)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))))
(+.f64 (-.f64 (fma.f64 1/6 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 -7/360 (pow.f64 th 3)))) (*.f64 (fma.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/5040 (fma.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1/720 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -7/2160))) (neg.f64 (pow.f64 th 5))))
(-.f64 (fma.f64 (pow.f64 th 3) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 7/360) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th)))) (*.f64 (fma.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/5040 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/540)) (pow.f64 th 5)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 kx) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (*.f64 (sin.f64 kx) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 ky ky) (sin.f64 th)) (sin.f64 kx)) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) (/.f64 ky (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (*.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (pow.f64 ky 4))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 ky ky) (sin.f64 th)) (sin.f64 kx)) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 ky 4) (sin.f64 kx)) (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) (/.f64 ky (sin.f64 th)))) (fma.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (*.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (pow.f64 ky 6))) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (pow.f64 ky 4))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 ky ky) (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 ky 6) (sin.f64 kx)) (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (sin.f64 th))) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 ky 4) (sin.f64 kx)) (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(+.f64 (fma.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th)) (/.f64 (sin.f64 kx) (sin.f64 th))) (*.f64 (/.f64 1/2 (sin.f64 th)) (+.f64 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (*.f64 (-.f64 (/.f64 2/45 (sin.f64 kx)) (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 6)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (*.f64 kx kx) (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) (/.f64 kx (sin.f64 th))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) (/.f64 kx (sin.f64 th))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) (/.f64 kx (sin.f64 th))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))) (sin.f64 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) (/.f64 kx (sin.f64 th))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) (/.f64 kx (sin.f64 th))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (*.f64 (-.f64 (*.f64 (/.f64 1/120 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 ky 5))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 (-.f64 (/.f64 (*.f64 -1/5040 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(+.f64 (fma.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (/.f64 (*.f64 (*.f64 -1/2 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 7) (*.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))) (fma.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (-.f64 (*.f64 (/.f64 1/120 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 ky 5) (fma.f64 (-.f64 (fma.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 (/.f64 1/120 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 (sin.f64 kx) 2)))) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 ky 7) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 5) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))))
(fma.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 5) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (+.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)) (neg.f64 (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 4)))))))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (-.f64 2/45 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (/.f64 (*.f64 (*.f64 1/4 (sin.f64 th)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 4)))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))))) (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)))) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (*.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))

localize18.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 kx)
0.1b
(/.f64 th (sin.f64 kx))
3.6b
(*.f64 ky (/.f64 th (sin.f64 kx)))
Compiler

Compiled 18 to 6 computations (66.7% saved)

series20.0ms (0%)

Counts
2 → 40
Calls

15 calls:

TimeVariablePointExpression
2.0ms
th
@0
(*.f64 ky (/.f64 th (sin.f64 kx)))
2.0ms
kx
@0
(*.f64 ky (/.f64 th (sin.f64 kx)))
2.0ms
ky
@0
(*.f64 ky (/.f64 th (sin.f64 kx)))
1.0ms
kx
@inf
(*.f64 ky (/.f64 th (sin.f64 kx)))
1.0ms
kx
@0
(/.f64 th (sin.f64 kx))

rewrite84.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0715
114415
2189615
Stop Event
node limit
Counts
2 → 53
Calls
Call 1
Inputs
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 th (sin.f64 kx))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 ky (/.f64 (sin.f64 kx) th))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 ky th) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 ky th)) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 ky th) 1) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 ky th) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 ky th) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 th) ky) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 ky (neg.f64 th)) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 ky (/.f64 th (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 ky (/.f64 th (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 ky (/.f64 th (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 th (sin.f64 kx))) ky))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 ky (/.f64 th (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 ky 3) (pow.f64 (/.f64 th (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 3) (pow.f64 ky 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 th (/.f64 1 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 th (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 th (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 th (sin.f64 kx))) (pow.f64 (cbrt.f64 (/.f64 th (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 th (sin.f64 kx))) 2) (cbrt.f64 (/.f64 th (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 th) 2) (*.f64 (cbrt.f64 th) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 th (sin.f64 kx))) (sqrt.f64 (/.f64 th (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 th) (*.f64 (sqrt.f64 th) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 th) (/.f64 1 (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 kx)) th)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 th) 2) 1) (/.f64 (cbrt.f64 th) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 th) 1) (/.f64 (sqrt.f64 th) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (/.f64 th (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 th) 2) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (/.f64 th (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 th) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (/.f64 (sqrt.f64 th) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (sin.f64 kx))) (/.f64 th (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 th) 2) (sqrt.f64 (sin.f64 kx))) (/.f64 (cbrt.f64 th) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 th (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 th (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 th (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 kx) th) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 th (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 th (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 th 3) (pow.f64 (sin.f64 kx) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 th (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 th (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 th (sin.f64 kx))))))))

simplify87.0ms (0.2%)

Algorithm
egg-herbie
Rules
561×distribute-rgt-in_binary64
536×distribute-lft-in_binary64
482×fma-def_binary64
446×fma-neg_binary64
394×associate--r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
060520
1188480
2635454
33058437
47717437
Stop Event
node limit
Counts
93 → 70
Calls
Call 1
Inputs
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) kx)
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (/.f64 (*.f64 ky th) kx))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th))) (pow.f64 kx 3))) (/.f64 (*.f64 ky th) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th)))) (+.f64 (*.f64 -1/5040 (*.f64 ky th)) (*.f64 1/720 (*.f64 th ky)))) (pow.f64 kx 5))) (+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th))) (pow.f64 kx 3))) (/.f64 (*.f64 ky th) kx))))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 th kx)
(+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx))
(+.f64 (*.f64 1/6 (*.f64 kx th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 th) (*.f64 -1/36 th)) (pow.f64 kx 3))) (/.f64 th kx)))
(+.f64 (*.f64 1/6 (*.f64 kx th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 th) (*.f64 -1/36 th)) (pow.f64 kx 3))) (+.f64 (/.f64 th kx) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/720 th) (+.f64 (*.f64 -1/5040 th) (*.f64 1/6 (+.f64 (*.f64 1/120 th) (*.f64 -1/36 th))))) (pow.f64 kx 5))))))
Outputs
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 ky kx) th)
(*.f64 ky (/.f64 th kx))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (/.f64 (*.f64 ky th) kx))
(fma.f64 1/6 (*.f64 (*.f64 ky th) kx) (/.f64 ky (/.f64 kx th)))
(fma.f64 1/6 (*.f64 ky (*.f64 th kx)) (*.f64 (/.f64 ky kx) th))
(*.f64 ky (fma.f64 th (*.f64 kx 1/6) (/.f64 th kx)))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th))) (pow.f64 kx 3))) (/.f64 (*.f64 ky th) kx)))
(fma.f64 1/6 (*.f64 (*.f64 ky th) kx) (fma.f64 -1 (*.f64 (fma.f64 -1/36 (*.f64 ky th) (*.f64 (*.f64 ky th) 1/120)) (pow.f64 kx 3)) (/.f64 ky (/.f64 kx th))))
(fma.f64 1/6 (*.f64 ky (*.f64 th kx)) (-.f64 (*.f64 (/.f64 ky kx) th) (*.f64 (*.f64 (*.f64 ky th) -7/360) (pow.f64 kx 3))))
(fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 ky th) 7/360) (*.f64 ky (fma.f64 th (*.f64 kx 1/6) (/.f64 th kx))))
(fma.f64 ky (/.f64 th kx) (*.f64 (*.f64 ky th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th)))) (+.f64 (*.f64 -1/5040 (*.f64 ky th)) (*.f64 1/720 (*.f64 th ky)))) (pow.f64 kx 5))) (+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th))) (pow.f64 kx 3))) (/.f64 (*.f64 ky th) kx))))
(fma.f64 -1 (*.f64 (fma.f64 1/6 (fma.f64 -1/36 (*.f64 ky th) (*.f64 (*.f64 ky th) 1/120)) (fma.f64 -1/5040 (*.f64 ky th) (*.f64 (*.f64 ky th) 1/720))) (pow.f64 kx 5)) (fma.f64 1/6 (*.f64 (*.f64 ky th) kx) (fma.f64 -1 (*.f64 (fma.f64 -1/36 (*.f64 ky th) (*.f64 (*.f64 ky th) 1/120)) (pow.f64 kx 3)) (/.f64 ky (/.f64 kx th)))))
(-.f64 (fma.f64 1/6 (*.f64 ky (*.f64 th kx)) (-.f64 (*.f64 (/.f64 ky kx) th) (*.f64 (*.f64 (*.f64 ky th) -7/360) (pow.f64 kx 3)))) (*.f64 (fma.f64 1/6 (*.f64 (*.f64 ky th) -7/360) (*.f64 (*.f64 ky th) 1/840)) (pow.f64 kx 5)))
(-.f64 (fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 ky th) 7/360) (*.f64 ky (fma.f64 th (*.f64 kx 1/6) (/.f64 th kx)))) (*.f64 (fma.f64 ky (*.f64 th 1/720) (*.f64 (*.f64 ky th) -13/3780)) (pow.f64 kx 5)))
(-.f64 (fma.f64 ky (/.f64 th kx) (*.f64 (*.f64 ky th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360)))) (*.f64 (*.f64 ky (*.f64 th -31/15120)) (pow.f64 kx 5)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 th kx)
(+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx))
(fma.f64 1/6 (*.f64 th kx) (/.f64 th kx))
(fma.f64 th (*.f64 kx 1/6) (/.f64 th kx))
(+.f64 (*.f64 1/6 (*.f64 kx th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 th) (*.f64 -1/36 th)) (pow.f64 kx 3))) (/.f64 th kx)))
(fma.f64 1/6 (*.f64 th kx) (fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 th -7/360)) (/.f64 th kx)))
(fma.f64 1/6 (*.f64 th kx) (-.f64 (/.f64 th kx) (*.f64 th (*.f64 -7/360 (pow.f64 kx 3)))))
(fma.f64 th (*.f64 kx 1/6) (fma.f64 (pow.f64 kx 3) (*.f64 th 7/360) (/.f64 th kx)))
(+.f64 (/.f64 th kx) (*.f64 th (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))))
(+.f64 (*.f64 1/6 (*.f64 kx th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 th) (*.f64 -1/36 th)) (pow.f64 kx 3))) (+.f64 (/.f64 th kx) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/720 th) (+.f64 (*.f64 -1/5040 th) (*.f64 1/6 (+.f64 (*.f64 1/120 th) (*.f64 -1/36 th))))) (pow.f64 kx 5))))))
(fma.f64 1/6 (*.f64 th kx) (+.f64 (fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 th -7/360)) (/.f64 th kx)) (neg.f64 (*.f64 (pow.f64 kx 5) (fma.f64 1/720 th (fma.f64 -1/5040 th (*.f64 1/6 (*.f64 th -7/360))))))))
(fma.f64 1/6 (*.f64 th kx) (-.f64 (-.f64 (/.f64 th kx) (*.f64 th (*.f64 -7/360 (pow.f64 kx 3)))) (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 th -7/2160) (*.f64 th 1/840)))))
(fma.f64 (pow.f64 kx 3) (*.f64 th 7/360) (fma.f64 th (*.f64 kx 1/6) (fma.f64 (pow.f64 kx 5) (neg.f64 (*.f64 th -31/15120)) (/.f64 th kx))))
(+.f64 (/.f64 th kx) (fma.f64 th (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360)) (*.f64 (pow.f64 kx 5) (*.f64 th 31/15120))))

localize30.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 kx)
0.1b
(/.f64 1 (sin.f64 kx))
0.2b
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
0.3b
(*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky))
Compiler

Compiled 31 to 15 computations (51.6% saved)

series38.0ms (0.1%)

Counts
3 → 64
Calls

18 calls:

TimeVariablePointExpression
28.0ms
kx
@-inf
(/.f64 1 (sin.f64 kx))
1.0ms
kx
@inf
(/.f64 1 (sin.f64 kx))
1.0ms
kx
@0
(*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky))
1.0ms
kx
@0
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
1.0ms
kx
@0
(/.f64 1 (sin.f64 kx))

rewrite93.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
940×pow1_binary64
861×add-log-exp_binary64
861×log1p-expm1-u_binary64
861×expm1-log1p-u_binary64
841×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01025
119725
2237325
Stop Event
node limit
Counts
3 → 59
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky))
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
(/.f64 1 (sin.f64 kx))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (/.f64 (sin.f64 kx) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 kx) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) 1) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) -1) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 kx)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 1 (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 th (sin.f64 ky)) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) th))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 th 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 th 3) (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (sin.f64 kx))) (cbrt.f64 (pow.f64 (sin.f64 kx) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 kx) -2)) (/.f64 1 (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 kx) -1/2) (pow.f64 (sin.f64 kx) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) -1) (pow.f64 (cbrt.f64 (sin.f64 kx)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) -1) (pow.f64 (sqrt.f64 (sin.f64 kx)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 kx) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 kx) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 kx) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (sin.f64 kx))))))))

simplify87.0ms (0.2%)

Algorithm
egg-herbie
Rules
661×fma-def_binary64
591×distribute-rgt-in_binary64
563×distribute-lft-in_binary64
483×fma-neg_binary64
355×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0107956
1323942
2996906
34024864
Stop Event
node limit
Counts
123 → 97
Calls
Call 1
Inputs
(/.f64 (sin.f64 ky) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky)))) (+.f64 (*.f64 1/720 (sin.f64 ky)) (*.f64 -1/5040 (sin.f64 ky)))) (pow.f64 kx 5))) (/.f64 (sin.f64 ky) kx))))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 ky (sin.f64 kx))
(+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))
(+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx))) (+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th)))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) th)) (*.f64 -1/5040 (*.f64 (sin.f64 ky) th)))) (pow.f64 kx 5))) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 1 kx)
(+.f64 (*.f64 1/6 kx) (/.f64 1 kx))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx)))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 31/15120 (pow.f64 kx 5)) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx))))
Outputs
(/.f64 (sin.f64 ky) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx))
(fma.f64 1/6 (*.f64 (sin.f64 ky) kx) (/.f64 (sin.f64 ky) kx))
(fma.f64 (*.f64 (sin.f64 ky) 1/6) kx (/.f64 (sin.f64 ky) kx))
(fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx)))
(fma.f64 -1 (*.f64 (*.f64 (sin.f64 ky) -7/360) (pow.f64 kx 3)) (fma.f64 1/6 (*.f64 (sin.f64 ky) kx) (/.f64 (sin.f64 ky) kx)))
(-.f64 (fma.f64 (*.f64 (sin.f64 ky) 1/6) kx (/.f64 (sin.f64 ky) kx)) (*.f64 (*.f64 (sin.f64 ky) -7/360) (pow.f64 kx 3)))
(fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (fma.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) 7/360) (/.f64 (sin.f64 ky) kx)))
(+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (fma.f64 (pow.f64 kx 3) 7/360 (*.f64 kx 1/6))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky)))) (+.f64 (*.f64 1/720 (sin.f64 ky)) (*.f64 -1/5040 (sin.f64 ky)))) (pow.f64 kx 5))) (/.f64 (sin.f64 ky) kx))))
(fma.f64 -1 (*.f64 (*.f64 (sin.f64 ky) -7/360) (pow.f64 kx 3)) (fma.f64 1/6 (*.f64 (sin.f64 ky) kx) (fma.f64 -1 (*.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) -7/360) (*.f64 (sin.f64 ky) 1/840)) (pow.f64 kx 5)) (/.f64 (sin.f64 ky) kx))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) kx) (fma.f64 (neg.f64 (fma.f64 (sin.f64 ky) 1/840 (*.f64 (sin.f64 ky) -7/2160))) (pow.f64 kx 5) (/.f64 (sin.f64 ky) kx))) (*.f64 (*.f64 (sin.f64 ky) -7/360) (pow.f64 kx 3)))
(-.f64 (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (fma.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) 7/360) (/.f64 (sin.f64 ky) kx))) (*.f64 (*.f64 (sin.f64 ky) -31/15120) (pow.f64 kx 5)))
(+.f64 (fma.f64 (pow.f64 kx 5) (*.f64 (sin.f64 ky) 31/15120) (/.f64 (sin.f64 ky) kx)) (*.f64 (sin.f64 ky) (fma.f64 (pow.f64 kx 3) 7/360 (*.f64 kx 1/6))))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 ky (sin.f64 kx))
(+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (/.f64 ky (sin.f64 kx)))
(+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(+.f64 (/.f64 ky (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (/.f64 ky (sin.f64 kx))))
(+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx))) (+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))))
(fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx)) (+.f64 (/.f64 ky (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))))
(+.f64 (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))) (fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx)) (/.f64 ky (sin.f64 kx))))
(fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 (sin.f64 ky) (/.f64 kx th))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (/.f64 (sin.f64 ky) (/.f64 kx th)))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (*.f64 (/.f64 (sin.f64 ky) kx) th))
(*.f64 th (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx)))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 kx (*.f64 1/6 th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 ky) th) -7/360)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (/.f64 (sin.f64 ky) (/.f64 kx th))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (*.f64 (/.f64 (sin.f64 ky) kx) th)) (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) (*.f64 th -7/360))))
(fma.f64 (pow.f64 kx 3) (*.f64 th (*.f64 (sin.f64 ky) 7/360)) (*.f64 th (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx))))
(*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (fma.f64 (pow.f64 kx 3) 7/360 (*.f64 kx 1/6)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th)))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) th)) (*.f64 -1/5040 (*.f64 (sin.f64 ky) th)))) (pow.f64 kx 5))) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 ky) th) -7/360)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (fma.f64 -1 (*.f64 (pow.f64 kx 5) (fma.f64 1/6 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (*.f64 (*.f64 (sin.f64 ky) th) 1/840))) (/.f64 (sin.f64 ky) (/.f64 kx th)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (-.f64 (*.f64 (/.f64 (sin.f64 ky) kx) th) (*.f64 (pow.f64 kx 5) (fma.f64 (*.f64 (sin.f64 ky) th) 1/840 (*.f64 (*.f64 (sin.f64 ky) th) -7/2160))))) (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) (*.f64 th -7/360))))
(-.f64 (fma.f64 (pow.f64 kx 3) (*.f64 th (*.f64 (sin.f64 ky) 7/360)) (*.f64 th (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx)))) (*.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 ky) th) -31/15120)))
(+.f64 (*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (fma.f64 (pow.f64 kx 3) 7/360 (*.f64 kx 1/6))))) (*.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 ky) th) 31/15120)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 ky (/.f64 th (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 (*.f64 (pow.f64 ky 3) th) (sin.f64 kx)) (/.f64 ky (/.f64 (sin.f64 kx) th)))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (*.f64 (/.f64 ky (sin.f64 kx)) th))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (*.f64 ky (/.f64 th (sin.f64 kx))))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 (*.f64 (pow.f64 ky 3) th) (sin.f64 kx)) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (/.f64 ky (/.f64 (sin.f64 kx) th))))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (/.f64 (sin.f64 kx) th)) (*.f64 (/.f64 ky (sin.f64 kx)) th)))
(fma.f64 (/.f64 ky (sin.f64 kx)) th (fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (*.f64 (/.f64 (*.f64 1/120 th) (sin.f64 kx)) (pow.f64 ky 5))))
(fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 th (sin.f64 kx))) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(fma.f64 -1/6 (/.f64 (*.f64 (pow.f64 ky 3) th) (sin.f64 kx)) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (fma.f64 -1/5040 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 7))) (/.f64 ky (/.f64 (sin.f64 kx) th)))))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (/.f64 (sin.f64 kx) th)) (fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (/.f64 (sin.f64 kx) th)) (*.f64 (/.f64 ky (sin.f64 kx)) th))))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (fma.f64 (/.f64 ky (sin.f64 kx)) th (fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (/.f64 (sin.f64 kx) th)) (*.f64 (/.f64 (*.f64 1/120 th) (sin.f64 kx)) (pow.f64 ky 5)))))
(+.f64 (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 1 kx)
(+.f64 (*.f64 1/6 kx) (/.f64 1 kx))
(fma.f64 1/6 kx (/.f64 1 kx))
(fma.f64 kx 1/6 (/.f64 1 kx))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx)))
(fma.f64 1/6 kx (fma.f64 7/360 (pow.f64 kx 3) (/.f64 1 kx)))
(fma.f64 kx 1/6 (fma.f64 (pow.f64 kx 3) 7/360 (/.f64 1 kx)))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 31/15120 (pow.f64 kx 5)) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx))))
(fma.f64 1/6 kx (fma.f64 31/15120 (pow.f64 kx 5) (fma.f64 7/360 (pow.f64 kx 3) (/.f64 1 kx))))
(fma.f64 kx 1/6 (fma.f64 (pow.f64 kx 5) 31/15120 (fma.f64 (pow.f64 kx 3) 7/360 (/.f64 1 kx))))

localize14.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 1 (sin.f64 th))
0.2b
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
0.3b
(*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th)))
Compiler

Compiled 31 to 15 computations (51.6% saved)

series5.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
ky
@0
(*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th)))
1.0ms
ky
@inf
(*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th)))
1.0ms
th
@inf
(*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th)))
1.0ms
ky
@-inf
(*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th)))
1.0ms
th
@-inf
(*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th)))

rewrite59.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
853×pow1_binary64
789×add-log-exp_binary64
789×log1p-expm1-u_binary64
789×expm1-log1p-u_binary64
771×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0921
118611
2248311
Stop Event
node limit
Counts
2 → 61
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (/.f64 (sin.f64 th) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 th))) (sqrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) 1) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (sin.f64 th)) 2)) (cbrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) -1) (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (pow.f64 (sin.f64 th) -1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 th) -1) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (sin.f64 th))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 th)) (pow.f64 (cbrt.f64 (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (cbrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (sqrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sin.f64 ky)) (/.f64 (cbrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) -1)) (/.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (pow.f64 (sin.f64 th) -1)) (/.f64 (cbrt.f64 (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th))) 2)) (/.f64 (sin.f64 ky) (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th))) 2)) (cbrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th))) 2)) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th)))) (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 th) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 th) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 th)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 th)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (/.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 th) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 th) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 th)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 th)))))))

simplify56.0ms (0.1%)

Algorithm
egg-herbie
Rules
406×distribute-neg-in_binary64
376×cancel-sign-sub-inv_binary64
336×distribute-rgt-neg-in_binary64
335×sub-neg_binary64
334×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
060447
1173431
2524419
31981415
46152415
Stop Event
node limit
Counts
109 → 82
Calls
Call 1
Inputs
(/.f64 ky (sin.f64 th))
(+.f64 (/.f64 ky (sin.f64 th)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th))))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 th))) (+.f64 (/.f64 ky (sin.f64 th)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th)))))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 th))) (+.f64 (/.f64 ky (sin.f64 th)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th))) (*.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 th))))))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) th)
(+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 th 3))) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky)))) (+.f64 (*.f64 1/720 (sin.f64 ky)) (*.f64 -1/5040 (sin.f64 ky)))) (pow.f64 th 5))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 th 3))) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th)))))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
th
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th)))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
Outputs
(/.f64 ky (sin.f64 th))
(+.f64 (/.f64 ky (sin.f64 th)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th))))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th)) (/.f64 ky (sin.f64 th)))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 th))) (+.f64 (/.f64 ky (sin.f64 th)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th)))))
(fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 th)) (+.f64 (/.f64 ky (sin.f64 th)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th)))))
(fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 th)) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th)) (/.f64 ky (sin.f64 th))))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 th)) (/.f64 ky (sin.f64 th))))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 th))) (+.f64 (/.f64 ky (sin.f64 th)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th))) (*.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 th))))))
(fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 th)) (+.f64 (/.f64 ky (sin.f64 th)) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th)) (*.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 th))))))
(+.f64 (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 th)) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th)) (/.f64 ky (sin.f64 th)))) (*.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 th))))
(fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 th)) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 th)) (fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 th)) (/.f64 ky (sin.f64 th)))))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) th)
(+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th)))
(+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 th (sin.f64 ky))))
(fma.f64 1/6 (*.f64 th (sin.f64 ky)) (/.f64 (sin.f64 ky) th))
(fma.f64 th (*.f64 (sin.f64 ky) 1/6) (/.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 th 3))) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(fma.f64 -1 (*.f64 (*.f64 (sin.f64 ky) -7/360) (pow.f64 th 3)) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 th (sin.f64 ky)))))
(-.f64 (fma.f64 1/6 (*.f64 th (sin.f64 ky)) (/.f64 (sin.f64 ky) th)) (*.f64 (sin.f64 ky) (*.f64 -7/360 (pow.f64 th 3))))
(fma.f64 th (*.f64 (sin.f64 ky) 1/6) (fma.f64 (pow.f64 th 3) (*.f64 (sin.f64 ky) 7/360) (/.f64 (sin.f64 ky) th)))
(+.f64 (/.f64 (sin.f64 ky) th) (*.f64 (sin.f64 ky) (+.f64 (*.f64 th 1/6) (*.f64 (pow.f64 th 3) 7/360))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky)))) (+.f64 (*.f64 1/720 (sin.f64 ky)) (*.f64 -1/5040 (sin.f64 ky)))) (pow.f64 th 5))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 th 3))) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th)))))
(fma.f64 -1 (*.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) -7/360) (*.f64 (sin.f64 ky) 1/840)) (pow.f64 th 5)) (fma.f64 -1 (*.f64 (*.f64 (sin.f64 ky) -7/360) (pow.f64 th 3)) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 th (sin.f64 ky))))))
(-.f64 (-.f64 (fma.f64 1/6 (*.f64 th (sin.f64 ky)) (/.f64 (sin.f64 ky) th)) (*.f64 (sin.f64 ky) (*.f64 -7/360 (pow.f64 th 3)))) (*.f64 (fma.f64 (sin.f64 ky) 1/840 (*.f64 (sin.f64 ky) -7/2160)) (pow.f64 th 5)))
(-.f64 (fma.f64 th (*.f64 (sin.f64 ky) 1/6) (/.f64 (sin.f64 ky) th)) (fma.f64 (*.f64 (sin.f64 ky) -31/15120) (pow.f64 th 5) (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 3) -7/360))))
(+.f64 (/.f64 (sin.f64 ky) th) (fma.f64 (pow.f64 th 5) (*.f64 (sin.f64 ky) 31/15120) (*.f64 (sin.f64 ky) (+.f64 (*.f64 th 1/6) (*.f64 (pow.f64 th 3) 7/360)))))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
th
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(fma.f64 -1/6 (pow.f64 th 3) th)
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) th))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th)))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 -1/5040 (pow.f64 th 7) (fma.f64 1/120 (pow.f64 th 5) th)))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) (fma.f64 -1/5040 (pow.f64 th 7) th)))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)

localize15.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(exp.f64 (sin.f64 kx))
0.1b
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
0.2b
(/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx))))
2.8b
(log.f64 (exp.f64 (sin.f64 kx)))
Compiler

Compiled 33 to 9 computations (72.7% saved)

series6.0ms (0%)

Counts
4 → 76
Calls

21 calls:

TimeVariablePointExpression
0.0ms
kx
@0
(log.f64 (exp.f64 (sin.f64 kx)))
0.0ms
kx
@0
(exp.f64 (sin.f64 kx))
0.0ms
kx
@0
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
0.0ms
kx
@0
(/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx))))
0.0ms
ky
@0
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))

rewrite69.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
940×pow1_binary64
862×add-log-exp_binary64
862×log1p-expm1-u_binary64
862×expm1-log1p-u_binary64
841×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01027
118627
2230527
Stop Event
node limit
Counts
4 → 91
Calls
Call 1
Inputs
(log.f64 (exp.f64 (sin.f64 kx)))
(/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
(exp.f64 (sin.f64 kx))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 kx)))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 kx))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 kx) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 kx)) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 kx) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 kx) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 kx)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 kx)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 kx) 3))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 kx)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 kx)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) 2) (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (/.f64 (sin.f64 ky) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (sin.f64 kx))) (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (sin.f64 kx))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 kx) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) th)) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) th) 1) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 ky)) th) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 th (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 th 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 th 3) (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (expm1.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (exp.f64 (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (exp.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (sin.f64 kx))) (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 kx))) 2) (cbrt.f64 (exp.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (exp.f64 (sin.f64 kx))) (sqrt.f64 (exp.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (exp.f64 (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (exp.f64 (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 (sin.f64 kx))))))))

simplify65.0ms (0.1%)

Algorithm
egg-herbie
Rules
710×fma-def_binary64
603×distribute-rgt-in_binary64
575×distribute-lft-in_binary64
548×fma-neg_binary64
387×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01171011
1351997
21070961
34349927
Stop Event
node limit
Counts
167 → 137
Calls
Call 1
Inputs
kx
(+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)
(+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))
(+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) (+.f64 (*.f64 -1/5040 (pow.f64 kx 7)) kx)))
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(/.f64 ky (sin.f64 kx))
(+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))
(+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx))) (+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky)))) (+.f64 (*.f64 1/720 (sin.f64 ky)) (*.f64 -1/5040 (sin.f64 ky)))) (pow.f64 kx 5))) (/.f64 (sin.f64 ky) kx))))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th)))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) th)) (*.f64 -1/5040 (*.f64 (sin.f64 ky) th)))) (pow.f64 kx 5))) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
1
(+.f64 1 kx)
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 kx 2)) kx))
(+.f64 (*.f64 -1/8 (pow.f64 kx 4)) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 kx 2)) kx)))
Outputs
kx
(+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)
(fma.f64 -1/6 (pow.f64 kx 3) kx)
(+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))
(fma.f64 1/120 (pow.f64 kx 5) (fma.f64 -1/6 (pow.f64 kx 3) kx))
(fma.f64 -1/6 (pow.f64 kx 3) (fma.f64 1/120 (pow.f64 kx 5) kx))
(+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) (+.f64 (*.f64 -1/5040 (pow.f64 kx 7)) kx)))
(fma.f64 1/120 (pow.f64 kx 5) (fma.f64 -1/6 (pow.f64 kx 3) (fma.f64 -1/5040 (pow.f64 kx 7) kx)))
(fma.f64 -1/6 (pow.f64 kx 3) (fma.f64 1/120 (pow.f64 kx 5) (fma.f64 -1/5040 (pow.f64 kx 7) kx)))
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(sin.f64 kx)
(/.f64 ky (sin.f64 kx))
(+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (/.f64 ky (sin.f64 kx)))
(+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(+.f64 (/.f64 ky (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(+.f64 (/.f64 ky (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)))))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (/.f64 ky (sin.f64 kx))))
(+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx))) (+.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))))
(fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx)) (+.f64 (/.f64 ky (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx))))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (*.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)))) (fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx)) (/.f64 ky (sin.f64 kx))))
(fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (sin.f64 kx)) (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx))
(fma.f64 1/6 (*.f64 kx (sin.f64 ky)) (/.f64 (sin.f64 ky) kx))
(fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (/.f64 (sin.f64 ky) kx)))
(fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) -7/360)) (fma.f64 1/6 (*.f64 kx (sin.f64 ky)) (/.f64 (sin.f64 ky) kx)))
(-.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 ky)) (/.f64 (sin.f64 ky) kx)) (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) -7/360)))
(fma.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) 7/360) (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx)))
(+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 ky)) (*.f64 1/120 (sin.f64 ky)))) (+.f64 (*.f64 1/720 (sin.f64 ky)) (*.f64 -1/5040 (sin.f64 ky)))) (pow.f64 kx 5))) (/.f64 (sin.f64 ky) kx))))
(fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) -7/360)) (fma.f64 1/6 (*.f64 kx (sin.f64 ky)) (fma.f64 -1 (*.f64 (pow.f64 kx 5) (fma.f64 1/6 (*.f64 (sin.f64 ky) -7/360) (*.f64 (sin.f64 ky) 1/840))) (/.f64 (sin.f64 ky) kx))))
(-.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 ky)) (-.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (pow.f64 kx 5) (fma.f64 (sin.f64 ky) 1/840 (*.f64 (sin.f64 ky) -7/2160))))) (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) -7/360)))
(-.f64 (fma.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) 7/360) (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx))) (*.f64 (pow.f64 kx 5) (*.f64 (sin.f64 ky) -31/15120)))
(+.f64 (fma.f64 (pow.f64 kx 5) (*.f64 (sin.f64 ky) 31/15120) (/.f64 (sin.f64 ky) kx)) (*.f64 (sin.f64 ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 ky (/.f64 th (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (/.f64 ky (/.f64 (sin.f64 kx) th)))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (/.f64 (sin.f64 kx) th)) (*.f64 (/.f64 ky (sin.f64 kx)) th))
(fma.f64 -1/6 (*.f64 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) th) (*.f64 ky (/.f64 th (sin.f64 kx))))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (/.f64 ky (/.f64 (sin.f64 kx) th))))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (/.f64 (sin.f64 kx) th)) (fma.f64 1/120 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 5)) (*.f64 (/.f64 ky (sin.f64 kx)) th)))
(fma.f64 -1/6 (*.f64 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) th) (fma.f64 (/.f64 ky (sin.f64 kx)) th (*.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))))))
(fma.f64 -1/6 (*.f64 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) th) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (fma.f64 -1/5040 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 7))) (/.f64 ky (/.f64 (sin.f64 kx) th)))))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (/.f64 (sin.f64 kx) th)) (fma.f64 1/120 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 5)) (fma.f64 -1/5040 (/.f64 (pow.f64 ky 7) (/.f64 (sin.f64 kx) th)) (*.f64 (/.f64 ky (sin.f64 kx)) th))))
(fma.f64 -1/6 (*.f64 (/.f64 (pow.f64 ky 3) (sin.f64 kx)) th) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (fma.f64 (/.f64 ky (sin.f64 kx)) th (/.f64 (*.f64 -1/5040 th) (/.f64 (sin.f64 kx) (pow.f64 ky 7))))))
(+.f64 (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 (sin.f64 ky) (/.f64 kx th))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (/.f64 (sin.f64 ky) (/.f64 kx th)))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (*.f64 (/.f64 (sin.f64 ky) kx) th))
(*.f64 th (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx)))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 kx (*.f64 1/6 th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 ky) th) -7/360)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (/.f64 (sin.f64 ky) (/.f64 kx th))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (*.f64 (/.f64 (sin.f64 ky) kx) th)) (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) (*.f64 th -7/360))))
(fma.f64 (pow.f64 kx 3) (*.f64 th (*.f64 (sin.f64 ky) 7/360)) (*.f64 th (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx))))
(*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th)))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) th)) (*.f64 -1/5040 (*.f64 (sin.f64 ky) th)))) (pow.f64 kx 5))) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 ky) th) -7/360)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (fma.f64 -1 (*.f64 (pow.f64 kx 5) (fma.f64 1/6 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (*.f64 (*.f64 (sin.f64 ky) th) 1/840))) (/.f64 (sin.f64 ky) (/.f64 kx th)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 kx th)) (-.f64 (*.f64 (/.f64 (sin.f64 ky) kx) th) (*.f64 (pow.f64 kx 5) (fma.f64 (*.f64 (sin.f64 ky) th) 1/840 (*.f64 (*.f64 (sin.f64 ky) th) -7/2160))))) (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) (*.f64 th -7/360))))
(-.f64 (fma.f64 (pow.f64 kx 3) (*.f64 th (*.f64 (sin.f64 ky) 7/360)) (*.f64 th (fma.f64 (sin.f64 ky) (*.f64 kx 1/6) (/.f64 (sin.f64 ky) kx)))) (*.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 ky) th) -31/15120)))
(+.f64 (*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))) (*.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 ky) th) 31/15120)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
1
(+.f64 1 kx)
(+.f64 kx 1)
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 kx 2)) kx))
(+.f64 1 (fma.f64 1/2 (*.f64 kx kx) kx))
(+.f64 1 (fma.f64 kx (*.f64 kx 1/2) kx))
(+.f64 (*.f64 -1/8 (pow.f64 kx 4)) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 kx 2)) kx)))
(fma.f64 -1/8 (pow.f64 kx 4) (+.f64 1 (fma.f64 1/2 (*.f64 kx kx) kx)))
(+.f64 1 (fma.f64 -1/8 (pow.f64 kx 4) (fma.f64 kx (*.f64 kx 1/2) kx)))
(fma.f64 -1/8 (pow.f64 kx 4) (+.f64 1 (fma.f64 kx (*.f64 kx 1/2) kx)))

eval252.0ms (0.6%)

Compiler

Compiled 14039 to 6387 computations (54.5% saved)

prune221.0ms (0.5%)

Pruning

87 alts after pruning (76 fresh and 11 done)

PrunedKeptTotal
New71748765
Fresh322860
Picked011
Done11011
Total75087837
Error
0b
Counts
837 → 87
Alt Table
Click to see full alt table
StatusErrorProgram
52.3b
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
55.2b
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
50.7b
(/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))) 1))
54.1b
(*.f64 th (/.f64 ky (sin.f64 kx)))
48.1b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
31.0b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
58.9b
(*.f64 ky (/.f64 th (exp.f64 (*.f64 (*.f64 3 (log.f64 (sin.f64 kx))) 1/3))))
16.9b
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sin.f64 th))
54.8b
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
59.7b
(*.f64 ky (/.f64 th (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
55.6b
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
31.5b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
54.8b
(*.f64 (/.f64 th kx) (sin.f64 ky))
55.2b
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
59.5b
(*.f64 ky (/.f64 th (pow.f64 (pow.f64 (sin.f64 kx) 3) 1/3)))
3.9b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
56.9b
(exp.f64 (log.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))
58.1b
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
54.8b
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
45.9b
(/.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
0.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
4.1b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
47.8b
(/.f64 (sin.f64 ky) (log1p.f64 (expm1.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))
0.2b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
31.6b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 th)))
46.0b
(/.f64 (sin.f64 ky) (/.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 3) (sin.f64 th)))
59.9b
(*.f64 ky (exp.f64 (log.f64 (/.f64 th (sin.f64 kx)))))
46.4b
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (cbrt.f64 (sin.f64 th)))
54.2b
(*.f64 ky (/.f64 th (sin.f64 kx)))
58.7b
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
54.3b
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 th)))
33.6b
(/.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)))
55.8b
(exp.f64 (log.f64 (sin.f64 th)))
4.0b
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
54.7b
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
46.3b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
53.7b
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
0.3b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th))))
54.1b
th
55.5b
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
46.3b
(*.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
57.7b
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 1 (fma.f64 kx (*.f64 kx 1/2) kx)))))
46.2b
(log1p.f64 (expm1.f64 (sin.f64 th)))
53.2b
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
46.4b
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
53.2b
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
0.3b
(/.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
51.9b
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2))))
60.6b
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 kx 1))))
53.9b
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
56.3b
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
54.6b
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
17.1b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (sin.f64 th))
24.9b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
54.7b
(*.f64 (/.f64 (sin.f64 ky) kx) th)
45.9b
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
46.3b
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
54.6b
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
46.9b
(-.f64 (+.f64 1 (sin.f64 th)) 1)
47.5b
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
54.8b
(*.f64 th (*.f64 (/.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)) (sin.f64 ky)))
53.8b
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
46.9b
(log.f64 (exp.f64 (sin.f64 th)))
52.7b
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th))))
46.5b
(log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
53.2b
(*.f64 th (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky))))
46.4b
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
47.9b
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
54.6b
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
45.9b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
55.2b
(*.f64 ky (/.f64 th kx))
53.3b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
55.1b
(/.f64 (*.f64 (sin.f64 ky) th) kx)
53.7b
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
54.1b
(/.f64 ky (/.f64 (sin.f64 kx) th))
44.8b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
55.5b
(/.f64 (*.f64 th ky) kx)
46.1b
(sin.f64 th)
45.9b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
57.3b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
56.0b
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
54.4b
(/.f64 (*.f64 th ky) (sin.f64 kx))
47.7b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
55.8b
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
46.4b
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
25.0b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) kx)))
56.3b
(*.f64 th (/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (sin.f64 kx)) 1)))
Compiler

Compiled 1100 to 801 computations (27.2% saved)

regimes1.5s (3.3%)

Counts
151 → 1
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 th)))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 kx 1))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 th (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (sin.f64 kx)) 1)))
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
(*.f64 th (*.f64 (/.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)) (sin.f64 ky)))
(*.f64 ky (/.f64 th (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(exp.f64 (log.f64 (sin.f64 th)))
(log1p.f64 (expm1.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(exp.f64 (log.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))
(*.f64 ky (exp.f64 (log.f64 (/.f64 th (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2))))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 th (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) -1))
(*.f64 ky (/.f64 th (pow.f64 (pow.f64 (sin.f64 kx) 3) 1/3)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(/.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))) 1))
(*.f64 ky (/.f64 th (exp.f64 (*.f64 (*.f64 3 (log.f64 (sin.f64 kx))) 1/3))))
(*.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 1 (fma.f64 kx (*.f64 kx 1/2) kx)))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 th (+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 th (*.f64 (sin.f64 kx) (-.f64 1/6 (*.f64 -7/360 (*.f64 th th)))))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(exp.f64 (log.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) kx)))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (cbrt.f64 (sin.f64 th)))
(/.f64 (sin.f64 ky) (log1p.f64 (expm1.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (log.f64 (exp.f64 (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
(exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(/.f64 (sin.f64 ky) (/.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 3) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th))))
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)))
(/.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3)) (sin.f64 th))
(pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3))))
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
Calls

11 calls:

190.0ms
kx
163.0ms
ky
150.0ms
th
138.0ms
(sin.f64 th)
135.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
Results
ErrorSegmentsBranch
0.2b1kx
0.2b1ky
0.2b1th
0.2b1(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
0.2b1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
0.2b1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
0.2b1(sin.f64 ky)
0.2b1(pow.f64 (sin.f64 kx) 2)
0.2b1(pow.f64 (sin.f64 kx) 2)
0.2b1(sin.f64 kx)
0.2b1(sin.f64 th)
Compiler

Compiled 1655 to 674 computations (59.3% saved)

regimes4.2s (9.4%)

Counts
128 → 4
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 th)))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 kx 1))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 th (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (sin.f64 kx)) 1)))
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
(*.f64 th (*.f64 (/.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)) (sin.f64 ky)))
(*.f64 ky (/.f64 th (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(exp.f64 (log.f64 (sin.f64 th)))
(log1p.f64 (expm1.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(exp.f64 (log.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))
(*.f64 ky (exp.f64 (log.f64 (/.f64 th (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2))))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 th (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) -1))
(*.f64 ky (/.f64 th (pow.f64 (pow.f64 (sin.f64 kx) 3) 1/3)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(/.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))) 1))
(*.f64 ky (/.f64 th (exp.f64 (*.f64 (*.f64 3 (log.f64 (sin.f64 kx))) 1/3))))
(*.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 1 (fma.f64 kx (*.f64 kx 1/2) kx)))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 th (+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 th (*.f64 (sin.f64 kx) (-.f64 1/6 (*.f64 -7/360 (*.f64 th th)))))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(exp.f64 (log.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) kx)))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (cbrt.f64 (sin.f64 th)))
(/.f64 (sin.f64 ky) (log1p.f64 (expm1.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (log.f64 (exp.f64 (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
(exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(/.f64 (sin.f64 ky) (/.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 3) (sin.f64 th)))
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
Calls

11 calls:

789.0ms
(sin.f64 th)
571.0ms
th
451.0ms
(sin.f64 th)
339.0ms
kx
317.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
12.2b3kx
21.9b4ky
14.4b7th
22.0b4(sin.f64 ky)
22.0b4(sin.f64 ky)
11.1b4(pow.f64 (sin.f64 kx) 2)
11.1b4(pow.f64 (sin.f64 kx) 2)
12.1b3(sin.f64 kx)
12.1b3(sin.f64 kx)
13.9b6(sin.f64 th)
13.9b6(sin.f64 th)
Compiler

Compiled 1275 to 512 computations (59.8% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.5347975861021818
0.5477277805540867
0.0ms
0.20592719079700486
0.22628188730370477
0.0ms
3.24548086551253e-10
0.001879930057006164
Compiler

Compiled 25 to 19 computations (24% saved)

regimes3.5s (7.8%)

Counts
115 → 3
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 th)))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 kx 1))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 th (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (sin.f64 kx)) 1)))
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
(*.f64 th (*.f64 (/.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)) (sin.f64 ky)))
(*.f64 ky (/.f64 th (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(exp.f64 (log.f64 (sin.f64 th)))
(log1p.f64 (expm1.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(exp.f64 (log.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))
(*.f64 ky (exp.f64 (log.f64 (/.f64 th (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2))))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 th (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) -1))
(*.f64 ky (/.f64 th (pow.f64 (pow.f64 (sin.f64 kx) 3) 1/3)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(/.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))) 1))
(*.f64 ky (/.f64 th (exp.f64 (*.f64 (*.f64 3 (log.f64 (sin.f64 kx))) 1/3))))
(*.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 1 (fma.f64 kx (*.f64 kx 1/2) kx)))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 th (+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 th (*.f64 (sin.f64 kx) (-.f64 1/6 (*.f64 -7/360 (*.f64 th th)))))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(exp.f64 (log.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) kx)))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
Calls

10 calls:

569.0ms
th
555.0ms
(sin.f64 th)
493.0ms
(sin.f64 th)
364.0ms
(sin.f64 ky)
338.0ms
ky
Results
ErrorSegmentsBranch
12.2b3kx
22.0b4ky
14.6b7th
22.1b4(sin.f64 ky)
12.2b2(pow.f64 (sin.f64 kx) 2)
12.2b2(pow.f64 (sin.f64 kx) 2)
12.1b3(sin.f64 kx)
12.1b3(sin.f64 kx)
14.1b6(sin.f64 th)
14.1b6(sin.f64 th)
Compiler

Compiled 1122 to 461 computations (58.9% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.8015218193273514e-5
0.05708006277457041
0.0ms
-0.043358160212423266
-9.507263306762012e-28
Compiler

Compiled 25 to 19 computations (24% saved)

regimes3.7s (8.3%)

Counts
114 → 5
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 th)))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 kx 1))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 th (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (sin.f64 kx)) 1)))
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
(*.f64 th (*.f64 (/.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)) (sin.f64 ky)))
(*.f64 ky (/.f64 th (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(exp.f64 (log.f64 (sin.f64 th)))
(log1p.f64 (expm1.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(exp.f64 (log.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))
(*.f64 ky (exp.f64 (log.f64 (/.f64 th (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2))))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 th (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) -1))
(*.f64 ky (/.f64 th (pow.f64 (pow.f64 (sin.f64 kx) 3) 1/3)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(/.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))) 1))
(*.f64 ky (/.f64 th (exp.f64 (*.f64 (*.f64 3 (log.f64 (sin.f64 kx))) 1/3))))
(*.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 1 (fma.f64 kx (*.f64 kx 1/2) kx)))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 th (+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 th (*.f64 (sin.f64 kx) (-.f64 1/6 (*.f64 -7/360 (*.f64 th th)))))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(exp.f64 (log.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) kx)))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 th)))
Outputs
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
Calls

11 calls:

609.0ms
(sin.f64 kx)
471.0ms
(sin.f64 th)
424.0ms
(sin.f64 th)
364.0ms
(sin.f64 kx)
354.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
14.8b3kx
22.0b4ky
16.6b3th
22.1b4(sin.f64 ky)
22.1b4(sin.f64 ky)
13.1b4(pow.f64 (sin.f64 kx) 2)
13.1b4(pow.f64 (sin.f64 kx) 2)
12.1b5(sin.f64 kx)
12.1b5(sin.f64 kx)
15.3b5(sin.f64 th)
15.3b5(sin.f64 th)
Compiler

Compiled 1112 to 455 computations (59.1% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.8015218193273514e-5
0.05708006277457041
0.0ms
-0.051980627145982276
-0.043358160212423266
0.0ms
-0.48450350244518164
-0.4835413038547345
0.0ms
-0.9134818281129344
-0.9107211654804312
Compiler

Compiled 25 to 19 computations (24% saved)

regimes3.7s (8.4%)

Counts
110 → 6
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 th)))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 kx 1))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 th (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (sin.f64 kx)) 1)))
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
(*.f64 th (*.f64 (/.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)) (sin.f64 ky)))
(*.f64 ky (/.f64 th (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(exp.f64 (log.f64 (sin.f64 th)))
(log1p.f64 (expm1.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(exp.f64 (log.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))
(*.f64 ky (exp.f64 (log.f64 (/.f64 th (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2))))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 th (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) -1))
(*.f64 ky (/.f64 th (pow.f64 (pow.f64 (sin.f64 kx) 3) 1/3)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(/.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))) 1))
(*.f64 ky (/.f64 th (exp.f64 (*.f64 (*.f64 3 (log.f64 (sin.f64 kx))) 1/3))))
(*.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 1 (fma.f64 kx (*.f64 kx 1/2) kx)))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 th (+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 th (*.f64 (sin.f64 kx) (-.f64 1/6 (*.f64 -7/360 (*.f64 th th)))))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(exp.f64 (log.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
Outputs
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(sin.f64 th)
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(sin.f64 th)
Calls

11 calls:

565.0ms
(sin.f64 kx)
532.0ms
(sin.f64 kx)
392.0ms
(sin.f64 th)
371.0ms
th
360.0ms
(sin.f64 th)
Results
ErrorSegmentsBranch
26.0b5kx
27.0b6ky
19.9b6th
25.4b5(sin.f64 ky)
25.4b5(sin.f64 ky)
27.4b4(pow.f64 (sin.f64 kx) 2)
27.4b4(pow.f64 (sin.f64 kx) 2)
23.8b6(sin.f64 kx)
23.8b6(sin.f64 kx)
19.5b6(sin.f64 th)
19.5b6(sin.f64 th)
Compiler

Compiled 1070 to 445 computations (58.4% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.0599096107462067e-5
0.013582182272778794
0.0ms
-0.06530072674699008
-6.626563777609288e-6
0.0ms
-0.29735919655765825
-0.2959083447276618
0.0ms
-0.6714023748674611
-0.6566496316523766
0.0ms
-0.9621979591832536
-0.9524203321803957
Compiler

Compiled 25 to 19 computations (24% saved)

regimes3.8s (8.6%)

Counts
108 → 5
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 th)))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 kx 1))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 th (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (sin.f64 kx)) 1)))
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
(*.f64 th (*.f64 (/.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)) (sin.f64 ky)))
(*.f64 ky (/.f64 th (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(exp.f64 (log.f64 (sin.f64 th)))
(log1p.f64 (expm1.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(exp.f64 (log.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))
(*.f64 ky (exp.f64 (log.f64 (/.f64 th (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2))))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 th (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) -1))
(*.f64 ky (/.f64 th (pow.f64 (pow.f64 (sin.f64 kx) 3) 1/3)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(/.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))) 1))
(*.f64 ky (/.f64 th (exp.f64 (*.f64 (*.f64 3 (log.f64 (sin.f64 kx))) 1/3))))
(*.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 1 (fma.f64 kx (*.f64 kx 1/2) kx)))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 th (+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 th (*.f64 (sin.f64 kx) (-.f64 1/6 (*.f64 -7/360 (*.f64 th th)))))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(exp.f64 (log.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
(*.f64 th (/.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx)))))
Outputs
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
(sin.f64 th)
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(sin.f64 th)
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
Calls

11 calls:

473.0ms
(sin.f64 kx)
444.0ms
kx
434.0ms
(sin.f64 kx)
429.0ms
th
411.0ms
(sin.f64 th)
Results
ErrorSegmentsBranch
29.6b7kx
34.0b4ky
38.5b6th
31.5b4(sin.f64 ky)
31.5b4(sin.f64 ky)
32.0b2(pow.f64 (sin.f64 kx) 2)
32.0b2(pow.f64 (sin.f64 kx) 2)
28.4b5(sin.f64 kx)
28.4b5(sin.f64 kx)
38.9b6(sin.f64 th)
38.9b6(sin.f64 th)
Compiler

Compiled 1050 to 439 computations (58.2% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.541838993584082e-128
1.8465351339103098e-109
0.0ms
9.564299653428916e-251
2.553955540357282e-247
0.0ms
-5.271425372614524e-273
-2.318481877741087e-276
0.0ms
-0.051980627145982276
-0.043358160212423266
Compiler

Compiled 25 to 19 computations (24% saved)

regimes3.3s (7.3%)

Counts
97 → 5
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 th)))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 kx 1))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 th (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (sin.f64 kx)) 1)))
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
(*.f64 th (*.f64 (/.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)) (sin.f64 ky)))
(*.f64 ky (/.f64 th (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(exp.f64 (log.f64 (sin.f64 th)))
(log1p.f64 (expm1.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(exp.f64 (log.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))
(*.f64 ky (exp.f64 (log.f64 (/.f64 th (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2))))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 th (pow.f64 (/.f64 (sin.f64 kx) (sin.f64 ky)) -1))
(*.f64 ky (/.f64 th (pow.f64 (pow.f64 (sin.f64 kx) 3) 1/3)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(/.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))) 1))
(*.f64 ky (/.f64 th (exp.f64 (*.f64 (*.f64 3 (log.f64 (sin.f64 kx))) 1/3))))
(*.f64 (/.f64 1 (sin.f64 kx)) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (/.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 1 (fma.f64 kx (*.f64 kx 1/2) kx)))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(/.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 kx) th) (*.f64 1/6 (*.f64 (sin.f64 kx) th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 th (+.f64 (/.f64 ky (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 ky 3) (sin.f64 kx)))))
Outputs
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2))))
(sin.f64 th)
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(sin.f64 th)
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
Calls

10 calls:

631.0ms
kx
536.0ms
(sin.f64 kx)
406.0ms
(sin.f64 th)
385.0ms
(sin.f64 th)
316.0ms
ky
Results
ErrorSegmentsBranch
33.7b5kx
35.0b3ky
40.1b4th
32.6b3(sin.f64 ky)
32.6b3(sin.f64 ky)
35.4b2(pow.f64 (sin.f64 kx) 2)
35.4b2(pow.f64 (sin.f64 kx) 2)
31.9b5(sin.f64 kx)
41.2b5(sin.f64 th)
41.2b5(sin.f64 th)
Compiler

Compiled 907 to 377 computations (58.4% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.541838993584082e-128
1.8465351339103098e-109
0.0ms
9.564299653428916e-251
2.553955540357282e-247
0.0ms
-5.271425372614524e-273
-2.318481877741087e-276
0.0ms
-3.350896760733224e-44
-8.852427715762969e-50
Compiler

Compiled 25 to 19 computations (24% saved)

regimes1.7s (3.9%)

Counts
76 → 3
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 th)))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 kx 1))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 th (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (sin.f64 kx)) 1)))
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
(*.f64 th (*.f64 (/.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)) (sin.f64 ky)))
(*.f64 ky (/.f64 th (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(exp.f64 (log.f64 (sin.f64 th)))
(log1p.f64 (expm1.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(exp.f64 (log.f64 (*.f64 ky (/.f64 th (sin.f64 kx)))))
(*.f64 ky (exp.f64 (log.f64 (/.f64 th (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
Outputs
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(sin.f64 th)
Calls

8 calls:

439.0ms
(sin.f64 th)
282.0ms
(sin.f64 th)
266.0ms
kx
262.0ms
(sin.f64 kx)
118.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
33.7b5kx
35.0b3ky
43.6b2th
32.6b3(sin.f64 ky)
32.6b3(sin.f64 ky)
33.3b5(sin.f64 kx)
42.4b5(sin.f64 th)
42.4b5(sin.f64 th)
Compiler

Compiled 648 to 257 computations (60.3% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.761721877997747e-126
5.919119021305906e-126
0.0ms
-7.869414699295363e-25
-3.058011197714351e-26
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes1.1s (2.6%)

Counts
64 → 3
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.f64 1 th)))
(*.f64 th (/.f64 (sin.f64 ky) (log.f64 (+.f64 kx 1))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 th (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 th (sin.f64 ky))))
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (-.f64 (+.f64 1 (sin.f64 kx)) 1)))
(*.f64 th (-.f64 (+.f64 1 (/.f64 (sin.f64 ky) (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(*.f64 th (/.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/6 th) kx) (/.f64 (sin.f64 th) kx)))
(*.f64 th (*.f64 (/.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)) (sin.f64 ky)))
(*.f64 ky (/.f64 th (+.f64 (*.f64 1/120 (pow.f64 kx 5)) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx))))
(exp.f64 (log.f64 (sin.f64 th)))
(log1p.f64 (expm1.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
Outputs
(sin.f64 th)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(sin.f64 th)
Calls

7 calls:

206.0ms
ky
204.0ms
kx
200.0ms
(sin.f64 th)
175.0ms
(sin.f64 kx)
126.0ms
th
Results
ErrorSegmentsBranch
36.5b3kx
35.2b3ky
43.0b3th
35.2b2(sin.f64 ky)
35.2b2(sin.f64 ky)
36.2b3(sin.f64 kx)
44.9b2(sin.f64 th)
Compiler

Compiled 553 to 232 computations (58% saved)

bsearch311.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
178.0ms
1.761721877997747e-126
5.919119021305906e-126
133.0ms
-2.6852159100877643e+33
-1.5935229673498717e+25
Compiler

Compiled 25 to 19 computations (24% saved)

regimes467.0ms (1%)

Counts
28 → 2
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
Outputs
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(sin.f64 th)
Calls

7 calls:

108.0ms
(sin.f64 kx)
95.0ms
(sin.f64 kx)
71.0ms
kx
54.0ms
(sin.f64 ky)
45.0ms
th
Results
ErrorSegmentsBranch
39.6b5kx
39.3b3ky
44.9b2th
39.1b2(sin.f64 ky)
39.2b5(sin.f64 kx)
39.2b5(sin.f64 kx)
44.9b2(sin.f64 th)
Compiler

Compiled 223 to 97 computations (56.5% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.761721877997747e-126
5.919119021305906e-126
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes482.0ms (1.1%)

Counts
25 → 3
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky th)))
(*.f64 ky (-.f64 (+.f64 1 (/.f64 th (sin.f64 kx))) 1))
(-.f64 (+.f64 1 (*.f64 ky (/.f64 th (sin.f64 kx)))) 1)
(*.f64 ky (/.f64 th (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
Outputs
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(sin.f64 th)
Calls

7 calls:

102.0ms
kx
89.0ms
ky
67.0ms
th
61.0ms
(sin.f64 kx)
46.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
41.2b3kx
40.7b3ky
44.9b2th
40.8b2(sin.f64 ky)
40.8b2(sin.f64 ky)
40.8b3(sin.f64 kx)
44.9b2(sin.f64 th)
Compiler

Compiled 202 to 91 computations (55% saved)

bsearch445.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
202.0ms
3.731262313640193e-239
6.586137216934689e-238
242.0ms
-1078333431473.9033
-18329667199.977295
Compiler

Compiled 25 to 19 computations (24% saved)

regimes106.0ms (0.2%)

Counts
5 → 3
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
(sin.f64 th)
Outputs
(sin.f64 th)
(*.f64 ky (/.f64 th kx))
(sin.f64 th)
Calls

4 calls:

29.0ms
ky
28.0ms
kx
28.0ms
th
18.0ms
(sin.f64 th)
Results
ErrorSegmentsBranch
42.3b3kx
41.3b3ky
44.6b3th
44.6b3(sin.f64 th)
Compiler

Compiled 44 to 26 computations (40.9% saved)

bsearch569.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
227.0ms
6.586137216934689e-238
3.899490015550712e-229
342.0ms
-3.987174777426221e+42
-2.6852159100877643e+33
Compiler

Compiled 25 to 19 computations (24% saved)

regimes54.0ms (0.1%)

Accuracy

Total -14.3b remaining (-29.5%)

Threshold costs -14.3b (-29.5%)

Counts
4 → 3
Calls
Call 1
Inputs
th
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 ky (+.f64 (*.f64 1/6 (*.f64 kx th)) (/.f64 th kx)))
Outputs
th
(*.f64 ky (/.f64 th kx))
th
Calls

3 calls:

24.0ms
th
16.0ms
ky
11.0ms
kx
Results
ErrorSegmentsBranch
49.3b3kx
48.4b3ky
52.9b2th
Compiler

Compiled 37 to 21 computations (43.2% saved)

bsearch543.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
204.0ms
1.761721877997747e-126
5.919119021305906e-126
340.0ms
-1078333431473.9033
-18329667199.977295
Compiler

Compiled 25 to 19 computations (24% saved)

simplify39.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0132776
1154776
2163776
3167776
4170776
5171776
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(if (<=.f64 (pow.f64 (sin.f64 kx) 2) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (if (<=.f64 (pow.f64 (sin.f64 kx) 2) 7926335344172073/36028797018963968) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th)) (if (<=.f64 (pow.f64 (sin.f64 kx) 2) 607985949695017/1125899906842624) (/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th)))) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th)))))
(if (<=.f64 (sin.f64 kx) -5764607523034235/144115188075855872) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th)) (if (<=.f64 (sin.f64 kx) 5902958103587057/295147905179352825856) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
(if (<=.f64 (sin.f64 kx) -8214565720323785/9007199254740992) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (if (<=.f64 (sin.f64 kx) -272467777455915/562949953421312) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)) (if (<=.f64 (sin.f64 kx) -3602879701896397/72057594037927936) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (if (<=.f64 (sin.f64 kx) 5902958103587057/295147905179352825856) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))
(if (<=.f64 (sin.f64 th) -1080863910568919/1125899906842624) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (if (<=.f64 (sin.f64 th) -5944751508129055/9007199254740992) (sin.f64 th) (if (<=.f64 (sin.f64 th) -5332261958806667/18014398509481984) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (if (<=.f64 (sin.f64 th) -3602879701896397/72057594037927936) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 th) 5902958103587057/147573952589676412928) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)) (sin.f64 th))))))
(if (<=.f64 (sin.f64 kx) -3602879701896397/72057594037927936) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (if (<=.f64 (sin.f64 kx) -6090821257124999/1218164251424999885044172798484398538859528357199375940858488307151618586345803262808201883235251282403163114528926083522932396233150386755822248412039081677441409712494559128733848706936256706044099949184902297359210699740674359368218295451933620701603467350388034693385228573748989263872) (sin.f64 th) (if (<=.f64 (sin.f64 kx) 1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 2438866054934369/48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784) (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))
(if (<=.f64 (sin.f64 kx) -8034690221294951/401734511064747568885490523085290650630550748445698208825344) (*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2)))) (if (<=.f64 (sin.f64 kx) -6090821257124999/1218164251424999885044172798484398538859528357199375940858488307151618586345803262808201883235251282403163114528926083522932396233150386755822248412039081677441409712494559128733848706936256706044099949184902297359210699740674359368218295451933620701603467350388034693385228573748989263872) (sin.f64 th) (if (<=.f64 (sin.f64 kx) 1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 2438866054934369/48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784) (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))
(if (<=.f64 (sin.f64 ky) -5444517870735015/10889035741470030830827987437816582766592) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 3048582568667961/1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (sin.f64 th)))
(if (<=.f64 ky -2685215910087764304335882405543936) (sin.f64 th) (if (<=.f64 ky 1342688652026229/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) 3048582568667961/1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) (sin.f64 th))
(if (<=.f64 ky -1104213433829277/1024) (sin.f64 th) (if (<=.f64 ky 8753910816355785/234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832) (*.f64 th (/.f64 ky (sin.f64 kx))) (sin.f64 th)))
(if (<=.f64 ky -3987174777426220995051623065175646183358464) (sin.f64 th) (if (<=.f64 ky 4828665624311927/7331559403129590068331208687020758653624765228075687047537011123791632385370343464792392772051104864109916034360063928339045596353810784435313926666640532382851295822842678298180301122938618566718730242107326783353838221723324821405531849499257419595776) (*.f64 ky (/.f64 th kx)) (sin.f64 th)))
(if (<=.f64 ky -1104213433829277/1024) th (if (<=.f64 ky 1342688652026229/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 ky (/.f64 th kx)) th))
th
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(if (<=.f64 (pow.f64 (sin.f64 kx) 2) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (if (<=.f64 (pow.f64 (sin.f64 kx) 2) 7926335344172073/36028797018963968) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th)) (if (<=.f64 (pow.f64 (sin.f64 kx) 2) 607985949695017/1125899906842624) (/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 1/6 th)))) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th)))))
(if (<=.f64 (pow.f64 (sin.f64 kx) 2) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (if (<=.f64 (pow.f64 (sin.f64 kx) 2) 7926335344172073/36028797018963968) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx 2))))))) (if (<=.f64 (pow.f64 (sin.f64 kx) 2) 607985949695017/1125899906842624) (/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 th 1/6)))) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx 2))))))))))
(if (<=.f64 (pow.f64 (sin.f64 kx) 2) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (if (<=.f64 (pow.f64 (sin.f64 kx) 2) 7926335344172073/36028797018963968) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (*.f64 kx 2)) -1/2))))) (if (<=.f64 (pow.f64 (sin.f64 kx) 2) 607985949695017/1125899906842624) (/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (/.f64 1 th) (*.f64 th 1/6)))) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (*.f64 kx 2)) -1/2))))))))
(if (<=.f64 (sin.f64 kx) -5764607523034235/144115188075855872) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th)) (if (<=.f64 (sin.f64 kx) 5902958103587057/295147905179352825856) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
(if (<=.f64 (sin.f64 kx) -5764607523034235/144115188075855872) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx 2))))))) (if (<=.f64 (sin.f64 kx) 5902958103587057/295147905179352825856) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(if (<=.f64 (sin.f64 kx) -5764607523034235/144115188075855872) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (*.f64 kx 2)) -1/2))))) (if (<=.f64 (sin.f64 kx) 5902958103587057/295147905179352825856) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sin.f64 kx)))))
(if (<=.f64 (sin.f64 kx) -8214565720323785/9007199254740992) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (if (<=.f64 (sin.f64 kx) -272467777455915/562949953421312) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)) (if (<=.f64 (sin.f64 kx) -3602879701896397/72057594037927936) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (if (<=.f64 (sin.f64 kx) 5902958103587057/295147905179352825856) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))
(if (<=.f64 (sin.f64 kx) -8214565720323785/9007199254740992) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx 2))))))) (if (<=.f64 (sin.f64 kx) -272467777455915/562949953421312) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)) (if (<=.f64 (sin.f64 kx) -3602879701896397/72057594037927936) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx 2))))))) (if (<=.f64 (sin.f64 kx) 5902958103587057/295147905179352825856) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sin.f64 kx)))))))
(if (<=.f64 (sin.f64 kx) -8214565720323785/9007199254740992) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 (cos.f64 (*.f64 kx 2)) -1/2))))) (if (<=.f64 (sin.f64 kx) -272467777455915/562949953421312) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)) (if (<=.f64 (sin.f64 kx) -3602879701896397/72057594037927936) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 (cos.f64 (*.f64 kx 2)) -1/2))))) (if (<=.f64 (sin.f64 kx) 5902958103587057/295147905179352825856) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sin.f64 kx)))))))
(if (<=.f64 (sin.f64 th) -1080863910568919/1125899906842624) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (if (<=.f64 (sin.f64 th) -5944751508129055/9007199254740992) (sin.f64 th) (if (<=.f64 (sin.f64 th) -5332261958806667/18014398509481984) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (if (<=.f64 (sin.f64 th) -3602879701896397/72057594037927936) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 th) 5902958103587057/147573952589676412928) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)) (sin.f64 th))))))
(if (<=.f64 (sin.f64 th) -1080863910568919/1125899906842624) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx 2))))))) (if (<=.f64 (sin.f64 th) -5944751508129055/9007199254740992) (sin.f64 th) (if (<=.f64 (sin.f64 th) -5332261958806667/18014398509481984) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx 2))))))) (if (<=.f64 (sin.f64 th) -3602879701896397/72057594037927936) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 th) 5902958103587057/147573952589676412928) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)) (sin.f64 th))))))
(if (<=.f64 (sin.f64 th) -1080863910568919/1125899906842624) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 (cos.f64 (*.f64 kx 2)) -1/2))))) (if (<=.f64 (sin.f64 th) -5944751508129055/9007199254740992) (sin.f64 th) (if (<=.f64 (sin.f64 th) -5332261958806667/18014398509481984) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 (cos.f64 (*.f64 kx 2)) -1/2))))) (if (<=.f64 (sin.f64 th) -3602879701896397/72057594037927936) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 th) 5902958103587057/147573952589676412928) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th)) (sin.f64 th))))))
(if (<=.f64 (sin.f64 kx) -3602879701896397/72057594037927936) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (if (<=.f64 (sin.f64 kx) -6090821257124999/1218164251424999885044172798484398538859528357199375940858488307151618586345803262808201883235251282403163114528926083522932396233150386755822248412039081677441409712494559128733848706936256706044099949184902297359210699740674359368218295451933620701603467350388034693385228573748989263872) (sin.f64 th) (if (<=.f64 (sin.f64 kx) 1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 2438866054934369/48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784) (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))
(if (<=.f64 (sin.f64 kx) -3602879701896397/72057594037927936) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx 2))))))) (if (<=.f64 (sin.f64 kx) -6090821257124999/1218164251424999885044172798484398538859528357199375940858488307151618586345803262808201883235251282403163114528926083522932396233150386755822248412039081677441409712494559128733848706936256706044099949184902297359210699740674359368218295451933620701603467350388034693385228573748989263872) (sin.f64 th) (if (<=.f64 (sin.f64 kx) 1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 2438866054934369/48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784) (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))
(if (<=.f64 (sin.f64 kx) -3602879701896397/72057594037927936) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 (cos.f64 (*.f64 kx 2)) -1/2))))) (if (<=.f64 (sin.f64 kx) -6090821257124999/1218164251424999885044172798484398538859528357199375940858488307151618586345803262808201883235251282403163114528926083522932396233150386755822248412039081677441409712494559128733848706936256706044099949184902297359210699740674359368218295451933620701603467350388034693385228573748989263872) (sin.f64 th) (if (<=.f64 (sin.f64 kx) 1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 2438866054934369/48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784) (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))
(if (<=.f64 (sin.f64 kx) -8034690221294951/401734511064747568885490523085290650630550748445698208825344) (*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (sin.f64 kx) 2)))) (if (<=.f64 (sin.f64 kx) -6090821257124999/1218164251424999885044172798484398538859528357199375940858488307151618586345803262808201883235251282403163114528926083522932396233150386755822248412039081677441409712494559128733848706936256706044099949184902297359210699740674359368218295451933620701603467350388034693385228573748989263872) (sin.f64 th) (if (<=.f64 (sin.f64 kx) 1612226962694291/16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 2438866054934369/48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784) (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))))
(if (<=.f64 (sin.f64 ky) -5444517870735015/10889035741470030830827987437816582766592) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 3048582568667961/1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -5444517870735015/10889035741470030830827987437816582766592) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 3048582568667961/1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 th)))
(if (<=.f64 ky -2685215910087764304335882405543936) (sin.f64 th) (if (<=.f64 ky 1342688652026229/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (sin.f64 th)))
(if (<=.f64 ky -2685215910087764304335882405543936) (sin.f64 th) (if (<=.f64 ky 1342688652026229/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) 3048582568667961/1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) (sin.f64 th))
(if (<=.f64 ky -1104213433829277/1024) (sin.f64 th) (if (<=.f64 ky 8753910816355785/234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832) (*.f64 th (/.f64 ky (sin.f64 kx))) (sin.f64 th)))
(if (<=.f64 ky -3987174777426220995051623065175646183358464) (sin.f64 th) (if (<=.f64 ky 4828665624311927/7331559403129590068331208687020758653624765228075687047537011123791632385370343464792392772051104864109916034360063928339045596353810784435313926666640532382851295822842678298180301122938618566718730242107326783353838221723324821405531849499257419595776) (*.f64 ky (/.f64 th kx)) (sin.f64 th)))
(if (<=.f64 ky -1104213433829277/1024) th (if (<=.f64 ky 1342688652026229/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 ky (/.f64 th kx)) th))
th
Compiler

Compiled 536 to 329 computations (38.6% saved)

soundness0.0ms (0%)

end194.0ms (0.4%)

Compiler

Compiled 497 to 241 computations (51.5% saved)

Profiling

Loading profile data...