Details

Time bar (total: 49.5s)

analyze702.0ms (1.4%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
0%0%99.9%0.1%0%0%0%7
25%25%74.9%0.1%0%0%0%8
54.7%54.6%45.2%0.1%0%0%0%9
56.3%56.2%43.7%0.1%0%0%0%10
62.5%62.4%37.4%0.1%0%0%0%11
66%65.9%33.9%0.1%0%0%0%12
Compiler

Compiled 20 to 15 computations (25% saved)

sample8.9s (17.9%)

Results
6.9s4791×body1024valid
1.2s1478×body512valid
716.0ms1973×body256valid
34.0ms14×body2048valid
Bogosity

preprocess112.0ms (0.2%)

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)

simplify85.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)

series30.0ms (0.1%)

Counts
4 → 100
Calls

27 calls:

TimeVariablePointExpression
3.0ms
kx
@0
(*.f64 (sin.f64 ky) (/.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))))
3.0ms
ky
@0
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
2.0ms
th
@-inf
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
2.0ms
th
@inf
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))

rewrite90.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))))))

simplify90.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)))

localize29.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)

series23.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))
3.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))
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
ky
@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
ky
@-inf
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))

rewrite73.0ms (0.1%)

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))))))

simplify90.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))))))

eval221.0ms (0.4%)

Compiler

Compiled 9715 to 4672 computations (51.9% saved)

prune110.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
0.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
1.1b
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3)) (sin.f64 th))
46.1b
(sin.f64 th)
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
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))
25.0b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) kx)))
45.9b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
47.7b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
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)))
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))))
3.9b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
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))
46.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
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)))
32.0b
(pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2)
48.1b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
4.1b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
0.2b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
16.9b
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sin.f64 th))
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)

series13.0ms (0%)

Counts
3 → 84
Calls

21 calls:

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

rewrite75.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
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))))))

simplify89.0ms (0.2%)

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))

localize4.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize12.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)

series14.0ms (0%)

Counts
2 → 44
Calls

15 calls:

TimeVariablePointExpression
4.0ms
kx
@-inf
(/.f64 (sin.f64 th) (sin.f64 kx))
1.0ms
ky
@0
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
1.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)))

rewrite72.0ms (0.1%)

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))))))))

simplify69.0ms (0.1%)

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)))

localize16.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 (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)

series10.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
1.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
th
@-inf
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))

rewrite141.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
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))))))

simplify164.0ms (0.3%)

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))

localize79.0ms (0.2%)

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)

series52.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
16.0ms
kx
@0
(sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))
7.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))
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
@inf
(sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))
3.0ms
kx
@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))

rewrite114.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))))))

simplify158.0ms (0.3%)

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))))))

eval376.0ms (0.8%)

Compiler

Compiled 18961 to 9019 computations (52.4% saved)

prune317.0ms (0.6%)

Pruning

43 alts after pruning (39 fresh and 4 done)

PrunedKeptTotal
New74637783
Fresh13215
Picked101
Done145
Total76143804
Error
0b
Counts
804 → 43
Alt Table
Click to see full alt table
StatusErrorProgram
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 kx) (sin.f64 th)))
46.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
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))))
1.1b
(/.f64 (sin.f64 ky) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) (sin.f64 th)))
46.4b
(expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (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))
3.9b
(/.f64 (*.f64 (sin.f64 ky) (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))))
53.2b
(*.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))))
46.1b
(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))
51.5b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (log.f64 (exp.f64 (sin.f64 kx)))))
45.9b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (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))
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))
31.0b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
46.2b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
45.9b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (expm1.f64 (log1p.f64 (sin.f64 kx)))))
47.7b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 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))
45.9b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
48.1b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
25.0b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) kx)))
45.9b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (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))))
52.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 kx 3)) kx)))
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)
47.7b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
4.1b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 ky) (/.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))))
24.9b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
0.2b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
31.5b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
53.4b
(exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
47.5b
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))
Compiler

Compiled 1130 to 814 computations (28% saved)

localize62.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)

series8.0ms (0%)

Counts
3 → 76
Calls

21 calls:

TimeVariablePointExpression
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))
0.0ms
ky
@0
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
0.0ms
th
@-inf
(/.f64 1 (sin.f64 th))
0.0ms
th
@0
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))

rewrite71.0ms (0.1%)

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))))))

simplify130.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))))

localize17.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)

series25.0ms (0.1%)

Counts
2 → 44
Calls

15 calls:

TimeVariablePointExpression
11.0ms
kx
@0
(/.f64 (sin.f64 ky) (sin.f64 kx))
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
ky
@-inf
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))

rewrite83.0ms (0.2%)

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))))))))

simplify78.0ms (0.2%)

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))))

localize21.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)

series10.0ms (0%)

Counts
2 → 44
Calls

15 calls:

TimeVariablePointExpression
1.0ms
th
@0
(/.f64 (sin.f64 kx) (sin.f64 th))
1.0ms
kx
@inf
(/.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))

rewrite126.0ms (0.3%)

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)))))))

simplify91.0ms (0.2%)

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)))))))

localize25.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)

series58.0ms (0.1%)

Counts
4 → 32
Calls

27 calls:

TimeVariablePointExpression
42.0ms
th
@inf
(*.f64 1/6 (*.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
@0
(*.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))))))

simplify76.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))))

localize17.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
@-inf
(log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
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))))
0.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))))

rewrite69.0ms (0.1%)

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)))))

simplify76.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))))

eval404.0ms (0.8%)

Compiler

Compiled 19653 to 7807 computations (60.3% saved)

prune423.0ms (0.9%)

Pruning

72 alts after pruning (65 fresh and 7 done)

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

Compiled 1890 to 1359 computations (28.1% saved)

localize33.0ms (0.1%)

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)

series17.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
7.0ms
kx
@0
(/.f64 (sin.f64 ky) (/.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)))))
1.0ms
th
@0
(/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
1.0ms
th
@0
(/.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
1.0ms
ky
@0
(/.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))

rewrite91.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))))))

simplify81.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))))))

localize8.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)

series9.0ms (0%)

Counts
2 → 40
Calls

15 calls:

TimeVariablePointExpression
1.0ms
ky
@0
(*.f64 ky (/.f64 th (sin.f64 kx)))
1.0ms
kx
@0
(*.f64 ky (/.f64 th (sin.f64 kx)))
1.0ms
th
@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))

rewrite64.0ms (0.1%)

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))))))))

simplify66.0ms (0.1%)

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))))

localize15.0ms (0%)

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)

series33.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))
0.0ms
kx
@0
(*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky))
0.0ms
kx
@0
(/.f64 1 (sin.f64 kx))
0.0ms
th
@0
(*.f64 th (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 ky)))

rewrite61.0ms (0.1%)

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))))))))

simplify58.0ms (0.1%)

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))))

localize15.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
@-inf
(*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th)))
1.0ms
ky
@0
(*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th)))
1.0ms
th
@-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
th
@0
(*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th)))

rewrite57.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)))))))

simplify53.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)

localize16.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 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 kx))))

rewrite76.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))))))))

simplify85.0ms (0.2%)

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)))

eval305.0ms (0.6%)

Compiler

Compiled 14039 to 6387 computations (54.5% saved)

prune254.0ms (0.5%)

Pruning

87 alts after pruning (76 fresh and 11 done)

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

Compiled 1100 to 801 computations (27.2% saved)

regimes1.5s (3.1%)

Counts
152 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 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 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 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.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)))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(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 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.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 (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 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.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 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(*.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 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)))))
(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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 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 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)))))
(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 (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)))))
(/.f64 (sin.f64 ky) (/.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 3) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.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 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.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 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:

216.0ms
(sin.f64 ky)
188.0ms
(sin.f64 kx)
136.0ms
(sin.f64 th)
129.0ms
th
129.0ms
ky
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 1668 to 678 computations (59.4% saved)

regimes2.9s (5.9%)

Counts
127 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 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 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 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.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)))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(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 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.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 (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 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.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 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(*.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 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)))))
(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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 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 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)))))
(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 (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)))))
(/.f64 (sin.f64 ky) (/.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 3) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Calls

10 calls:

402.0ms
(sin.f64 ky)
345.0ms
ky
332.0ms
th
327.0ms
(sin.f64 kx)
326.0ms
(sin.f64 kx)
Results
ErrorSegmentsBranch
0.2b3kx
2.8b3ky
0.2b3th
2.8b3(sin.f64 ky)
0.2b2(pow.f64 (sin.f64 kx) 2)
0.2b2(pow.f64 (sin.f64 kx) 2)
0.2b3(sin.f64 kx)
0.2b3(sin.f64 kx)
0.2b3(sin.f64 th)
0.2b3(sin.f64 th)
Compiler

Compiled 1255 to 505 computations (59.8% saved)

bsearch2.0ms (0%)

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

Compiled 25 to 19 computations (24% saved)

regimes3.5s (7%)

Counts
126 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 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 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 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.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)))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(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 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.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 (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 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.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 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(*.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 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)))))
(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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 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 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)))))
(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 (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)))))
(/.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:

542.0ms
th
523.0ms
(sin.f64 th)
428.0ms
(sin.f64 th)
298.0ms
ky
294.0ms
(sin.f64 kx)
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 1249 to 508 computations (59.3% saved)

bsearch1.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)

regimes2.5s (5%)

Counts
114 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 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 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 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.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)))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(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 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.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 (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 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.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 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(*.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 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)))))
(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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 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:

487.0ms
th
337.0ms
kx
332.0ms
ky
317.0ms
(sin.f64 th)
297.0ms
(sin.f64 th)
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 1112 to 464 computations (58.3% saved)

bsearch2.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 (7.5%)

Counts
113 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 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 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 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.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)))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(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 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.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 (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 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.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 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(*.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 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)))))
(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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 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:

441.0ms
(sin.f64 th)
409.0ms
(sin.f64 kx)
365.0ms
ky
347.0ms
(pow.f64 (sin.f64 kx) 2)
323.0ms
(sin.f64 th)
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 1102 to 458 computations (58.4% saved)

bsearch1.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)

regimes4.7s (9.6%)

Counts
109 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 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 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 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.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)))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(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 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.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 (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 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.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 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(*.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 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)))))
(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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 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:

622.0ms
kx
613.0ms
ky
578.0ms
(sin.f64 kx)
524.0ms
(sin.f64 th)
473.0ms
(sin.f64 kx)
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 1060 to 445 computations (58% 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)

regimes4.1s (8.3%)

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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 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 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 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.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)))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(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 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.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 (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 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.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 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(*.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 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)))))
(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)))))
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:

599.0ms
kx
584.0ms
(sin.f64 kx)
536.0ms
(sin.f64 kx)
395.0ms
th
371.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 442 computations (57.9% 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.0s (6.2%)

Counts
99 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 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 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 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.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)))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(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 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
(*.f64 ky (/.f64 th (sqrt.f64 (pow.f64 (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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (/.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 (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 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.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 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 ky) th) (*.f64 1/6 (*.f64 (sin.f64 ky) th))))
(*.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 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:

484.0ms
kx
461.0ms
th
373.0ms
(sin.f64 th)
370.0ms
(sin.f64 kx)
301.0ms
(sin.f64 th)
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 925 to 380 computations (58.9% 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
-3.350896760733224e-44
-8.852427715762969e-50
Compiler

Compiled 25 to 19 computations (24% saved)

regimes2.8s (5.6%)

Counts
79 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 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 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 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.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)))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(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 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 ky (sqrt.f64 (pow.f64 (/.f64 th (sin.f64 kx)) 2)))
Outputs
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(sin.f64 th)
Calls

8 calls:

850.0ms
th
507.0ms
(sin.f64 kx)
340.0ms
(sin.f64 th)
310.0ms
kx
250.0ms
(sin.f64 th)
Results
ErrorSegmentsBranch
33.7b5kx
35.0b3ky
41.2b4th
32.6b3(sin.f64 ky)
32.6b3(sin.f64 ky)
33.3b5(sin.f64 kx)
42.2b5(sin.f64 th)
42.2b5(sin.f64 th)
Compiler

Compiled 672 to 260 computations (61.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.2s (2.4%)

Counts
67 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 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 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 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 th kx)))
(*.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)))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(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:

240.0ms
kx
205.0ms
ky
205.0ms
(sin.f64 kx)
188.0ms
th
151.0ms
(sin.f64 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 573 to 234 computations (59.2% saved)

bsearch564.0ms (1.1%)

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

Compiled 25 to 19 computations (24% saved)

regimes593.0ms (1.2%)

Counts
37 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 ky (sin.f64 th)))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.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 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
Outputs
(sin.f64 th)
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(sin.f64 th)
Calls

7 calls:

126.0ms
(sin.f64 kx)
101.0ms
(sin.f64 th)
87.0ms
kx
86.0ms
th
66.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
36.6b3kx
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 288 to 107 computations (62.8% saved)

bsearch256.0ms (0.5%)

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

Compiled 25 to 19 computations (24% saved)

regimes411.0ms (0.8%)

Counts
22 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 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))
Outputs
(sin.f64 th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(sin.f64 th)
Calls

7 calls:

84.0ms
ky
70.0ms
th
61.0ms
kx
59.0ms
(sin.f64 kx)
46.0ms
(sin.f64 th)
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 183 to 89 computations (51.4% saved)

bsearch306.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
126.0ms
3.731262313640193e-239
6.586137216934689e-238
180.0ms
-1078333431473.9033
-18329667199.977295
Compiler

Compiled 25 to 19 computations (24% saved)

regimes242.0ms (0.5%)

Counts
14 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
Outputs
(sin.f64 th)
(/.f64 ky (/.f64 (sin.f64 kx) th))
(sin.f64 th)
Calls

7 calls:

57.0ms
ky
45.0ms
th
44.0ms
kx
27.0ms
(sin.f64 ky)
25.0ms
(sin.f64 th)
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 113 to 55 computations (51.3% saved)

bsearch398.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
143.0ms
3.731262313640193e-239
6.586137216934689e-238
255.0ms
-1078333431473.9033
-18329667199.977295
Compiler

Compiled 25 to 19 computations (24% saved)

regimes80.0ms (0.2%)

Counts
8 → 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 (/.f64 (sin.f64 ky) kx) th)
(*.f64 (/.f64 th kx) (sin.f64 ky))
(-.f64 (+.f64 1 (sin.f64 th)) 1)
Outputs
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(sin.f64 th)
Calls

5 calls:

20.0ms
ky
16.0ms
(sin.f64 th)
16.0ms
th
15.0ms
kx
11.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
41.7b3kx
41.1b3ky
44.9b2th
41.0b2(sin.f64 ky)
44.9b2(sin.f64 th)
Compiler

Compiled 67 to 38 computations (43.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
6.586137216934689e-238
3.899490015550712e-229
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes53.0ms (0.1%)

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:

13.0ms
ky
13.0ms
th
13.0ms
(sin.f64 th)
12.0ms
kx
Results
ErrorSegmentsBranch
42.3b3kx
41.3b3ky
44.6b3th
44.6b3(sin.f64 th)
Compiler

Compiled 44 to 26 computations (40.9% saved)

bsearch267.0ms (0.5%)

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

Compiled 25 to 19 computations (24% saved)

regimes41.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:

15.0ms
th
14.0ms
ky
11.0ms
kx
Results
ErrorSegmentsBranch
49.3b3kx
48.4b3ky
52.9b2th
Compiler

Compiled 37 to 21 computations (43.2% saved)

bsearch273.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
129.0ms
1.761721877997747e-126
5.919119021305906e-126
144.0ms
-1078333431473.9033
-18329667199.977295
Compiler

Compiled 25 to 19 computations (24% saved)

simplify42.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0147898
1172898
2181898
3185898
4188898
5189898
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 (sin.f64 kx) -5764607523034235/144115188075855872) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (sin.f64 kx) 944473296573929/9444732965739290427392) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(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 ky -2685215910087764304335882405543936) (sin.f64 th) (if (<=.f64 ky 1342688652026229/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 (/.f64 ky (sin.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 -1104213433829277/1024) (sin.f64 th) (if (<=.f64 ky 8753910816355785/234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832) (/.f64 ky (/.f64 (sin.f64 kx) th)) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) 3665779701564795/3665779701564795034165604343510379326812382614037843523768505561895816192685171732396196386025552432054958017180031964169522798176905392217656963333320266191425647911421339149090150561469309283359365121053663391676919110861662410702765924749628709797888) (*.f64 (/.f64 (sin.f64 ky) kx) th) (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 (sin.f64 kx) -5764607523034235/144115188075855872) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (sin.f64 kx) 944473296573929/9444732965739290427392) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(if (<=.f64 (sin.f64 kx) -5764607523034235/144115188075855872) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (sin.f64 kx) 944473296573929/9444732965739290427392) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 kx (sin.f64 ky)) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(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 ky -2685215910087764304335882405543936) (sin.f64 th) (if (<=.f64 ky 1342688652026229/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)) (sin.f64 th)))
(if (<=.f64 ky -2685215910087764304335882405543936) (sin.f64 th) (if (<=.f64 ky 1342688652026229/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))) (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 -1104213433829277/1024) (sin.f64 th) (if (<=.f64 ky 8753910816355785/234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832) (/.f64 ky (/.f64 (sin.f64 kx) th)) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) 3665779701564795/3665779701564795034165604343510379326812382614037843523768505561895816192685171732396196386025552432054958017180031964169522798176905392217656963333320266191425647911421339149090150561469309283359365121053663391676919110861662410702765924749628709797888) (*.f64 (/.f64 (sin.f64 ky) kx) th) (sin.f64 th))
(if (<=.f64 (sin.f64 ky) 3665779701564795/3665779701564795034165604343510379326812382614037843523768505561895816192685171732396196386025552432054958017180031964169522798176905392217656963333320266191425647911421339149090150561469309283359365121053663391676919110861662410702765924749628709797888) (*.f64 th (/.f64 (sin.f64 ky) 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 623 to 373 computations (40.1% saved)

soundness0.0ms (0%)

end210.0ms (0.4%)

Compiler

Compiled 575 to 264 computations (54.1% saved)

Profiling

Loading profile data...