Details

Time bar (total: 28.2s)

analyze731.0ms (2.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
0%99.9%0.1%7
25%74.9%0.1%8
54.6%45.2%0.1%9
56.2%43.7%0.1%10
62.4%37.4%0.1%11
65.9%33.9%0.1%12
Compiler

Compiled 20 to 15 computations (25% saved)

sample7.2s (25.5%)

Results
5.7s4781×body1024valid
887.0ms1466×body512valid
537.0ms1987×body256valid
33.0ms22×body2048valid

preprocess96.0ms (0.3%)

Algorithm
egg-herbie
Rules
779×associate-/l/_binary64
739×associate-/r/_binary64
592×associate-*r/_binary64
441×sqr-pow_binary64
430×associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027104
15472
211472
322172
464872
5286672
6453072
7542772
8570172
9602272
10645372
11769972
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 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 (*.f64 (sin.f64 kx) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.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 (*.f64 (sin.f64 ky) (sin.f64 kx)) (hypot.f64 (sin.f64 ky) (sin.f64 th)))
(*.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 (sin.f64 kx) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky)))
(*.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)

simplify72.0ms (0.3%)

Algorithm
egg-herbie
Rules
846×associate-*l/_binary64
832×sqr-pow_binary64
606×associate-/r*_binary64
389×associate-*l*_binary64
373×cube-prod_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01426
12618
25118
37918
416018
545018
6170218
7304818
8389618
9414918
10448818
11497818
12565218
13698918
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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.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)) (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
1.5b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
5.4b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
2.3b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Compiler

Compiled 33 to 23 computations (30.3% saved)

localize9.0ms (0%)

Local error

Found 8 expressions with local error:

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

series27.0ms (0.1%)

Counts
4 → 88
Calls

24 calls:

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

rewrite86.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
562×log-prod_binary64
373×prod-diff_binary64
317×pow-prod-down_binary64
293×pow2_binary64
206×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01037
121037
2289037
Stop Event
node limit
Counts
4 → 131
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (sin.f64 th))
(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 (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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (/.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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (/.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 (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 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.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 (sin.f64 ky) (sin.f64 th))) 2) (*.f64 (cbrt.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 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) (pow.f64 (cbrt.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 *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2) (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (*.f64 (sqrt.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 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) (sqrt.f64 (/.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 (sin.f64 th) (neg.f64 (sin.f64 ky))) (/.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))) (*.f64 (sin.f64 ky) (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 th) 1) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(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 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (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 (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 (sin.f64 th) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 (sin.f64 ky) (cbrt.f64 (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 (*.f64 (sin.f64 ky) (sin.f64 th)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (/.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 (*.f64 (sin.f64 ky) (sin.f64 th))) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (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 (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (sin.f64 ky) (sqrt.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 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (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 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))) 2) 1/2)))) (#(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 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 (*.f64 (sin.f64 ky) (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)) (*.f64 (sin.f64 ky) (sin.f64 th))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.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 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 (exp.f64 (/.f64 (sin.f64 ky) (/.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 (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) (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 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))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.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 exp.f64 (*.f64 (log.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 exp.f64 (*.f64 (log.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 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 (sin.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (sin.f64 ky))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (sin.f64 ky)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (cos.f64 (-.f64 ky th)) 2) (/.f64 (cos.f64 (+.f64 ky th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) -2)))) (#(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)) 2) 1/2)))) (#(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 pow.f64 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) -1)))) (#(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 (pow.f64 (exp.f64 (sin.f64 th)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.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 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 exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.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) (sin.f64 th)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) 2))))))
((#(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))) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(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 (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 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 +.f64 0 (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 th))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 th)))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 th))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 th))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (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)) (cbrt.f64 (sin.f64 th)))))) (#(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 pow.f64 (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 (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 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 log.f64 (+.f64 1 (expm1.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 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)))))) (#(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 (*.f64 3 (log.f64 (sin.f64 th))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 th))) 2))))))

simplify62.0ms (0.2%)

Algorithm
egg-herbie
Rules
980×fma-def_binary64
650×associate-*r*_binary64
637×associate-*l*_binary64
355×times-frac_binary64
338×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01892737
15912585
219992405
Stop Event
node limit
Counts
219 → 195
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 (sin.f64 th) ky)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky)))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (pow.f64 ky 7))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) th)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (sin.f64 ky) th) (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (sin.f64 ky) th) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5))))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(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)))
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)))
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 (*.f64 -1/6 (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 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 (*.f64 -1/6 (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 (*.f64 -1/6 (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 (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/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 -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 (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) (*.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 (*.f64 -1/6 (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 -1/5040 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 (*.f64 -1/6 (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 (*.f64 -1/6 (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 (*.f64 -1/6 (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 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.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)) (*.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 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (-.f64 2/45 (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (pow.f64 (sin.f64 kx) 2))))) (/.f64 (*.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))) (+.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 (*.f64 -1/2 (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 (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/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 (*.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 (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 (/.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 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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))))
(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 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 ky) (fma.f64 -1/6 (pow.f64 th 3) 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))))
(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 (sin.f64 ky) (*.f64 (pow.f64 th 5) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (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 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(fma.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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (fma.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 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 (sin.f64 ky) (*.f64 (pow.f64 th 5) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (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 (sin.f64 ky) (*.f64 (pow.f64 th 7) (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 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (fma.f64 -1/5040 (pow.f64 th 7) th))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (fma.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 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 (*.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 (*.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)))
(-.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 (pow.f64 (sin.f64 ky) 4) (sin.f64 th)))) (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 (*.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 (*.f64 1/4 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (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 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (/.f64 -1/4 (/.f64 (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 (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 (pow.f64 (sin.f64 ky) 4) (sin.f64 th)))) (pow.f64 kx 4)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (fma.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))))) (neg.f64 (pow.f64 kx 6)) (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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 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 (sin.f64 th) ky)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky))
(fma.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (*.f64 (sin.f64 th) ky))
(fma.f64 (sin.f64 th) ky (*.f64 (sin.f64 th) (*.f64 (pow.f64 ky 3) -1/6)))
(*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky)))
(fma.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (fma.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (*.f64 (sin.f64 th) ky)))
(fma.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (fma.f64 (sin.f64 th) ky (*.f64 (sin.f64 th) (*.f64 (pow.f64 ky 3) -1/6))))
(fma.f64 (sin.f64 th) (*.f64 (pow.f64 ky 5) 1/120) (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (pow.f64 ky 7))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky))))
(fma.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (fma.f64 -1/5040 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (fma.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (*.f64 (sin.f64 th) ky))))
(fma.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (fma.f64 -1/5040 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (fma.f64 (sin.f64 th) ky (*.f64 (sin.f64 th) (*.f64 (pow.f64 ky 3) -1/6)))))
(+.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) th)
(*.f64 th (sin.f64 ky))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sin.f64 ky) th))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (*.f64 th (sin.f64 ky)))
(fma.f64 th (sin.f64 ky) (*.f64 (pow.f64 th 3) (*.f64 -1/6 (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 -1/6 (pow.f64 th 3) th))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (sin.f64 ky) th) (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5)))))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 (sin.f64 ky) th (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5)))))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 th (sin.f64 ky) (*.f64 (pow.f64 th 5) (*.f64 1/120 (sin.f64 ky)))))
(fma.f64 (pow.f64 th 5) (*.f64 1/120 (sin.f64 ky)) (*.f64 (sin.f64 ky) (fma.f64 -1/6 (pow.f64 th 3) th)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (sin.f64 ky) th) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5))))))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 (sin.f64 ky) th (fma.f64 -1/5040 (*.f64 (sin.f64 ky) (pow.f64 th 7)) (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5))))))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 th (sin.f64 ky) (fma.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (*.f64 (pow.f64 th 7) (*.f64 -1/5040 (sin.f64 ky))))))
(+.f64 (*.f64 (sin.f64 ky) (fma.f64 1/120 (pow.f64 th 5) (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (sin.f64 ky) (fma.f64 -1/6 (pow.f64 th 3) th)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(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 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 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (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 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (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)) (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 (*.f64 1/2 (pow.f64 ky 6)) (-.f64 2/45 (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 kx)))
(+.f64 (sin.f64 kx) (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (fma.f64 1/2 (*.f64 (/.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)) (pow.f64 ky 6)) (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (sin.f64 kx) (pow.f64 ky 4))))))
(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))
(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 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 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (/.f64 (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 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 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 (+.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 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))))
(+.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (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)) (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))
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)))

localize19.0ms (0.1%)

Local error

Found 8 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
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.0b
(sin.f64 th)
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 kx) 2)
0.3b
(pow.f64 (sin.f64 ky) 2)
5.0b
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))

series23.0ms (0.1%)

Counts
4 → 68
Calls

21 calls:

TimeVariablePointExpression
4.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))
3.0ms
th
@inf
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
3.0ms
ky
@0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
2.0ms
kx
@0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
1.0ms
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))

rewrite86.0ms (0.3%)

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
2382538
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 ky) 2)
(pow.f64 (sin.f64 kx) 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 (hypot.f64 (pow.f64 (sin.f64 kx) 3) (pow.f64 (sin.f64 ky) 3)) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 (sin.f64 ky) 4)) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) 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 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 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 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 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 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 (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 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))))) (#(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 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))) 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 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) 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 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) 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 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))) 1))))))

simplify115.0ms (0.4%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
02062422
16012274
220182140
376832140
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 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)))))
(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 (*.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 (/.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 (*.f64 kx kx) (sin.f64 ky)) (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 (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 (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 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)))) (sin.f64 ky)) (pow.f64 kx 6)) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (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 (sin.f64 ky)) kx)) (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 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (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 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (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 (+.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)) (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))))) (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)))
(+.f64 (sin.f64 kx) (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (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 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (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 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 2/45 (pow.f64 ky 6) (*.f64 ky ky)))
(fma.f64 2/45 (pow.f64 ky 6) (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 (*.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 2/45 (pow.f64 ky 6) (*.f64 -1/315 (pow.f64 ky 8)))))
(fma.f64 (pow.f64 ky 4) -1/3 (fma.f64 2/45 (pow.f64 ky 6) (fma.f64 ky ky (*.f64 -1/315 (pow.f64 ky 8)))))
(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 (*.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 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 -1/6 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))))
(+.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 (+.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) (sin.f64 kx)) (+.f64 (/.f64 1/12 (pow.f64 (sin.f64 kx) 2)) 1/120))) (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 ky (/.f64 (sin.f64 th) (sin.f64 kx)))))
(+.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 (sin.f64 th) (*.f64 (sin.f64 kx) (+.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 (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)) (/.f64 1 (pow.f64 (sin.f64 kx) 8)))))) (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 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (+.f64 (*.f64 -1/2 (+.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 (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)) (/.f64 1 (pow.f64 (sin.f64 kx) 8))))) (+.f64 (/.f64 -1/12 (pow.f64 (sin.f64 kx) 6)) (*.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 (/.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 (+.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) (sin.f64 kx)) (+.f64 (/.f64 1/12 (pow.f64 (sin.f64 kx) 2)) 1/120))) (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 ky (/.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)))) (*.f64 (sin.f64 th) (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (*.f64 (*.f64 kx kx) (sin.f64 th)) (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/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 (*.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 (sin.f64 th) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (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 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (fma.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 1/2 (*.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 (pow.f64 kx 4) (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 (*.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 (sin.f64 th) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)))))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (fma.f64 (*.f64 -1/2 (+.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))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 (pow.f64 kx 6) (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))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (sin.f64 th)) (*.f64 (sin.f64 th) (+.f64 (*.f64 (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)) (+.f64 (/.f64 1/6 (pow.f64 (sin.f64 ky) 4)) (*.f64 1/2 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))))) (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)) (fma.f64 -1/2 (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 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (/.f64 1 (pow.f64 (sin.f64 ky) 8)))) (/.f64 -1/45 (pow.f64 (sin.f64 ky) 4)))))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (sin.f64 th)) (*.f64 (sin.f64 th) (+.f64 (*.f64 (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)) (+.f64 (/.f64 1/6 (pow.f64 (sin.f64 ky) 4)) (*.f64 1/2 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))))) (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)) (fma.f64 -1/2 (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 -1/45 (pow.f64 (sin.f64 ky) 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 ky) (sin.f64 th)))
(*.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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 th (*.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 (*.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 (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 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 (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 (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)))))
(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 (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 (sin.f64 ky) (*.f64 (pow.f64 th 7) (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 (*.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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))

eval126.0ms (0.4%)

Compiler

Compiled 8636 to 3920 computations (54.6% saved)

prune83.0ms (0.3%)

Pruning

21 alts after pruning (20 fresh and 1 done)

PrunedKeptTotal
New33520355
Fresh000
Picked101
Done011
Total33621357
Error
0b
Counts
357 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
46.8b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
31.8b
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
2.4b
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
47.7b
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
35.8b
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
47.8b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
2.4b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
48.3b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
49.3b
(sin.f64 th)
46.2b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
2.4b
(/.f64 (*.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (sin.f64 th)))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
2.3b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
1.4b
(pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))) 3)
35.8b
(*.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))
12.3b
(*.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.4b
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
45.1b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
2.5b
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Compiler

Compiled 580 to 395 computations (31.9% saved)

localize14.0ms (0%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
0.1b
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
0.1b
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
0.0b
(sin.f64 th)
0.0b
(sin.f64 th)
0.1b
(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)))

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

rewrite77.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
571×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
2283439
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 (*.f64 3 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) 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 (cbrt.f64 (pow.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 (cbrt.f64 (pow.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 (cbrt.f64 (pow.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 (cbrt.f64 (pow.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))) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.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)) 2) 1/2)))) (#(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 (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 2 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1/2))))) (#(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 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1) 1))))))

simplify68.0ms (0.2%)

Algorithm
egg-herbie
Rules
826×fma-def_binary64
699×associate-*r*_binary64
669×associate-*l*_binary64
426×times-frac_binary64
398×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02033206
16232870
221022693
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 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 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 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 th 5) (*.f64 (sin.f64 ky) 1/120)) (*.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 (*.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 th (*.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 (*.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 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 (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 (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 (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 (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 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (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 (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 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) (pow.f64 (sin.f64 ky) 4)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)))))) (pow.f64 kx 6) (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)) (fma.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 (/.f64 (*.f64 1/4 (sin.f64 th)) (pow.f64 (sin.f64 ky) 4)) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3)))) (neg.f64 (pow.f64 kx 6)) (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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (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 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.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 (*.f64 -1/6 (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 ky (/.f64 (sin.f64 kx) (sin.f64 th))))
(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 (*.f64 -1/6 (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 (*.f64 -1/6 (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 -1/2 (/.f64 (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 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))))
(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 (sin.f64 th) (/.f64 (sin.f64 kx) 1/120)) (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 (*.f64 -1/6 (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 (*.f64 -1/6 (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 (*.f64 -1/6 (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 (*.f64 -1/6 (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 -1/2 (/.f64 (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 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))))) (*.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 -1/2 (/.f64 (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 (+.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))) (*.f64 -1/2 (*.f64 (/.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/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 7)))
(fma.f64 (-.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) 1/120)) (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 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) 1/120)) (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 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))))))) (pow.f64 ky 7) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (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 (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 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 (*.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 (+.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)) (pow.f64 kx 6))) 1))
(+.f64 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 (/.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) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (neg.f64 (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 -1/12 (sin.f64 kx)) (*.f64 (sin.f64 kx) -1/36)))) (/.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 (/.f64 (sin.f64 kx) ky) (fma.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) (fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/2 (-.f64 (/.f64 2/45 (sin.f64 kx)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (fma.f64 (sin.f64 kx) -1/5040 (fma.f64 -1/6 (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (neg.f64 (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) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (neg.f64 (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 -1/12 (sin.f64 kx)) (*.f64 (sin.f64 kx) -1/36)))) (fma.f64 (sin.f64 kx) -1/5040 (+.f64 (/.f64 1/240 (sin.f64 kx)) (*.f64 1/720 (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 -1/12 (sin.f64 kx)) (*.f64 (sin.f64 kx) -1/36)))))))
(*.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 (/.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 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (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 (*.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 1/2 (/.f64 (+.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 (*.f64 kx kx) (sin.f64 ky)) (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 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (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 (sin.f64 kx) (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (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 (/.f64 2/45 (sin.f64 kx)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (pow.f64 ky 6)) (*.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)) (sin.f64 kx)))
(+.f64 (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 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (sin.f64 kx) (pow.f64 ky 4)))) (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (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))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))

localize2.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 th)
0.0b
(sin.f64 th)

rewrite0.0ms (0%)

Counts
0 → 0

simplify6.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
0 → 0
Calls
Call 1
Inputs
Outputs

localize10.0ms (0%)

Local error

Found 6 expressions with local error:

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

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite48.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
924×pow1_binary64
859×add-log-exp_binary64
859×log1p-expm1-u_binary64
859×expm1-log1p-u_binary64
842×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
115113
2220113
Stop Event
node limit
Counts
1 → 41
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 2) (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (/.f64 1 (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) 1) (/.f64 (sin.f64 th) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) 1) (/.f64 (sin.f64 ky) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (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 (/.f64 (sin.f64 th) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sin.f64 ky) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (sqrt.f64 (sin.f64 ky))) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))))

simplify120.0ms (0.4%)

Algorithm
egg-herbie
Rules
708×sqr-pow_binary64
674×cube-prod_binary64
624×unswap-sqr_binary64
621×fabs-mul_binary64
486×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020106
155106
2125106
3316106
4591106
51315106
61985106
72952106
83106106
93353106
103670106
114151106
124830106
135724106
146370106
156877106
167278106
177657106
187873106
Stop Event
node limit
Counts
65 → 49
Calls
Call 1
Inputs
(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
(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)

localize12.0ms (0%)

Local error

Found 8 expressions with local error:

NewErrorProgram
2.3b
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.1b
(*.f64 (sin.f64 th) ky)
0.1b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.0b
(sin.f64 th)
0.0b
(sin.f64 th)
0.1b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.1b
(*.f64 (sin.f64 th) ky)
2.3b
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))

series14.0ms (0%)

Counts
2 → 40
Calls

15 calls:

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

rewrite56.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01022
120322
2265022
Stop Event
node limit
Counts
2 → 81
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) ky)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) ky)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) ky))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (*.f64 ky (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 ky (*.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) ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2)) (*.f64 (cbrt.f64 (*.f64 (sin.f64 th) ky)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)) -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 th) ky)) -2)) (cbrt.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 th) ky)) (*.f64 (sqrt.f64 (*.f64 (sin.f64 th) ky)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)) (sqrt.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 (sin.f64 th) ky)) (/.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))) (*.f64 (sin.f64 th) ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) 1) (/.f64 ky (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.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 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2)) 1) (/.f64 (cbrt.f64 (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 th) ky)) 1) (/.f64 (sqrt.f64 (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 ky (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 ky (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 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2) (/.f64 (*.f64 (sin.f64 th) ky) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 th) ky)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 (sqrt.f64 (*.f64 (sin.f64 th) ky)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 ky (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 ky (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 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2) (/.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (cbrt.f64 (*.f64 (sin.f64 th) ky)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 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)) (*.f64 (sin.f64 th) ky)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)))) (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (sin.f64 th) ky) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) ky))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky))) 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 th) ky))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 th) ky))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 ky) (sin.f64 th))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 ky) (sin.f64 th)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 th) ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 th) ky) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) ky)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 th) ky)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 th) ky))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 th) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 th) ky)))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 th) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 th) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 th) ky)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 th) ky))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 th) ky))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 th) ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 th) ky)) 1) 1))))))

simplify53.0ms (0.2%)

Algorithm
egg-herbie
Rules
745×fma-def_binary64
687×times-frac_binary64
518×associate-*r*_binary64
510×associate-/l*_binary64
493×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01471723
14461710
216591587
Stop Event
node limit
Counts
121 → 114
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th ky))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th ky)) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (pow.f64 th 3)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th ky)) (+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (pow.f64 th 5)))) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (pow.f64 th 3))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th ky)) (+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.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 ky (pow.f64 th 3)))) (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.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 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (pow.f64 (sin.f64 kx) 3))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (pow.f64 (sin.f64 kx) 3))) (*.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 5)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (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 5))) (*.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 7))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 2) ky)) (pow.f64 (sin.f64 ky) 3))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 2) ky)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) ky)) (pow.f64 (sin.f64 ky) 3))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 th) ky) (pow.f64 (sin.f64 ky) 5)))) (pow.f64 kx 4))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 2) ky)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) ky)) (pow.f64 (sin.f64 ky) 3))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 th) ky) (pow.f64 (sin.f64 ky) 5)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (*.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)))) ky)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) ky)) (pow.f64 (sin.f64 ky) 3))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 th) ky) (pow.f64 (sin.f64 ky) 5)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) ky)) (pow.f64 (sin.f64 ky) 5))))) (pow.f64 kx 6))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 ky th)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (*.f64 ky th))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 ky th) (*.f64 1/120 (*.f64 (pow.f64 th 5) ky))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 ky th) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 th 7) ky)) (*.f64 1/120 (*.f64 (pow.f64 th 5) ky)))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky th))
(*.f64 ky (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) th))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th ky)) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (pow.f64 th 3)))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky th) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.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 ky th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 -1/6 (*.f64 ky (pow.f64 th 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (fma.f64 -1/6 (pow.f64 th 3) th)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th ky)) (+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (pow.f64 th 5)))) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (pow.f64 th 3))))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.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 ky (pow.f64 th 5))) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.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 ky th) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 th 5) (*.f64 ky 1/120)))))
(fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 -1/6 (*.f64 ky (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (fma.f64 1/120 (pow.f64 th 5) th))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th ky)) (+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.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 ky (pow.f64 th 3)))) (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (pow.f64 th 7)))))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.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 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 ky (pow.f64 th 3))) (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (pow.f64 th 7)))))))
(fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky th) (fma.f64 1/120 (*.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 ky (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (*.f64 -1/5040 (pow.f64 th 7)))))))
(+.f64 (*.f64 (*.f64 ky (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (fma.f64 1/120 (pow.f64 th 5) th))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (pow.f64 (sin.f64 kx) 3))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (pow.f64 ky 3)))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (pow.f64 ky 3)) (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (pow.f64 ky 3)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (pow.f64 (sin.f64 kx) 3))) (*.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 5)))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (pow.f64 ky 3))) (neg.f64 (*.f64 (fma.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 5)))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (pow.f64 ky 3)) (/.f64 (*.f64 ky (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 5)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (pow.f64 ky 3)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)) (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.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 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (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 5))) (*.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 7))))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (pow.f64 ky 3))) (*.f64 -1 (+.f64 (*.f64 (fma.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 5)) (*.f64 (fma.f64 -1/2 (/.f64 (fma.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)) (fma.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 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 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (pow.f64 ky 3)) (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx))) (neg.f64 (fma.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 5) (*.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 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/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 7)))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.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 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.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 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.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 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) 1/4)))) (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) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 ky) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) ky)
(*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 2) ky)) (pow.f64 (sin.f64 ky) 3))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (*.f64 ky (*.f64 kx kx)))) (/.f64 (sin.f64 th) (/.f64 (sin.f64 ky) ky)))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) ky) (*.f64 kx kx))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) ky))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) kx) (*.f64 kx ky))) (*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 2) ky)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) ky)) (pow.f64 (sin.f64 ky) 3))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 th) ky) (pow.f64 (sin.f64 ky) 5)))) (pow.f64 kx 4))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (*.f64 ky (*.f64 kx kx)))) (fma.f64 -1 (*.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 ky (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (pow.f64 (sin.f64 ky) 3)) (*.f64 -1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 5) ky)))) (pow.f64 kx 4)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 ky) ky))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) ky) (*.f64 kx kx))) (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 ky (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (*.f64 -1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) ky))) (pow.f64 kx 4))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) kx) (*.f64 kx ky))) (fma.f64 (fma.f64 -1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) ky) (/.f64 (*.f64 (*.f64 ky (sin.f64 th)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) -1/6)) (pow.f64 (sin.f64 ky) 3))) (neg.f64 (pow.f64 kx 4)) (*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 2) ky)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) ky)) (pow.f64 (sin.f64 ky) 3))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 th) ky) (pow.f64 (sin.f64 ky) 5)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (*.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)))) ky)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) ky)) (pow.f64 (sin.f64 ky) 3))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 th) ky) (pow.f64 (sin.f64 ky) 5)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) ky)) (pow.f64 (sin.f64 ky) 5))))) (pow.f64 kx 6))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (*.f64 ky (*.f64 kx kx)))) (fma.f64 -1 (*.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 ky (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (pow.f64 (sin.f64 ky) 3)) (*.f64 -1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 5) ky)))) (pow.f64 kx 4)) (fma.f64 -1 (*.f64 (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (*.f64 ky (+.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/2 (/.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 ky (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (pow.f64 (sin.f64 ky) 3)) (*.f64 -1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 5) ky)))) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 5) (*.f64 ky (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))) (pow.f64 kx 6)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 ky) ky)))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) ky) (*.f64 kx kx))) (-.f64 (fma.f64 (neg.f64 (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 ky (-.f64 2/45 (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2))))) (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 ky (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (*.f64 -1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) ky))) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (/.f64 (*.f64 (*.f64 ky (sin.f64 th)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 5)))))) (pow.f64 kx 6) (*.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) ky)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 ky (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (*.f64 -1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) ky))) (pow.f64 kx 4))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) kx) (*.f64 kx ky))) (-.f64 (*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th)) (fma.f64 (fma.f64 -1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) ky) (/.f64 (*.f64 (*.f64 ky (sin.f64 th)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) -1/6)) (pow.f64 (sin.f64 ky) 3))) (pow.f64 kx 4) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) ky) (/.f64 (*.f64 (*.f64 ky (sin.f64 th)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) -1/6)) (pow.f64 (sin.f64 ky) 3))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/4 (*.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) ky) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 (/.f64 1/2 (pow.f64 (sin.f64 ky) 3)) (*.f64 (*.f64 ky (sin.f64 th)) (-.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))))))) (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) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 ky (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 ky (sin.f64 th)))
(*.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 ky th)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (*.f64 ky th))
(fma.f64 -1/6 (*.f64 ky (pow.f64 th 3)) (*.f64 ky th))
(*.f64 ky (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 ky (fma.f64 -1/6 (pow.f64 th 3) th))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 ky th) (*.f64 1/120 (*.f64 (pow.f64 th 5) ky))))
(fma.f64 -1/6 (*.f64 ky (pow.f64 th 3)) (fma.f64 ky th (*.f64 1/120 (*.f64 ky (pow.f64 th 5)))))
(fma.f64 -1/6 (*.f64 ky (pow.f64 th 3)) (*.f64 ky (+.f64 th (*.f64 1/120 (pow.f64 th 5)))))
(*.f64 ky (+.f64 (*.f64 1/120 (pow.f64 th 5)) (fma.f64 -1/6 (pow.f64 th 3) th)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 ky th) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 th 7) ky)) (*.f64 1/120 (*.f64 (pow.f64 th 5) ky)))))
(fma.f64 -1/6 (*.f64 ky (pow.f64 th 3)) (fma.f64 ky th (fma.f64 -1/5040 (*.f64 ky (pow.f64 th 7)) (*.f64 1/120 (*.f64 ky (pow.f64 th 5))))))
(fma.f64 -1/6 (*.f64 ky (pow.f64 th 3)) (fma.f64 ky th (*.f64 ky (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (*.f64 1/120 (pow.f64 th 5))))))
(*.f64 ky (+.f64 (fma.f64 1/120 (pow.f64 th 5) (*.f64 -1/5040 (pow.f64 th 7))) (fma.f64 -1/6 (pow.f64 th 3) th)))

localize12.0ms (0%)

Local error

Found 8 expressions with local error:

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

series9.0ms (0%)

Counts
2 → 60
Calls

15 calls:

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

rewrite84.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
603×log-prod_binary64
368×pow-prod-down_binary64
357×prod-diff_binary64
318×pow2_binary64
225×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01229
124629
2314929
Stop Event
node limit
Counts
2 → 69
Calls
Call 1
Inputs
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 1 (hypot.f64 (sin.f64 ky) (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 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))) (#(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 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 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))) (#(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 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) 1) (*.f64 2 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) -1) (*.f64 2 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(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 (*.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 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (*.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) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) 2)))) (#(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 (pow.f64 (*.f64 (sin.f64 ky) (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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)))) (#(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 cbrt.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 ky) (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 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 +.f64 0 (/.f64 1 (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 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (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))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (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)) (/.f64 1 (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) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (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 1 (cbrt.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 (/.f64 1 (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 (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 (/.f64 1 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 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 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2) 2)))) (#(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 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) -1)))) (#(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 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (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 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.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 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))))

simplify79.0ms (0.3%)

Algorithm
egg-herbie
Rules
855×fma-def_binary64
641×associate-*l*_binary64
471×times-frac_binary64
431×associate-/l*_binary64
386×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01872671
15792644
221382479
Stop Event
node limit
Counts
129 → 110
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 1 (sin.f64 kx))
(+.f64 (/.f64 1 (sin.f64 kx)) (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))))
(+.f64 (/.f64 1 (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))))
(+.f64 (/.f64 1 (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4)) (*.f64 -1 (*.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)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 5))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 6))))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(/.f64 1 (sin.f64 ky))
(+.f64 (/.f64 1 (sin.f64 ky)) (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))))
(+.f64 (/.f64 1 (sin.f64 ky)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.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 (sin.f64 ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 5))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2))) (*.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)))) (pow.f64 (sin.f64 ky) 3))))) (pow.f64 kx 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4)))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 ky (/.f64 (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 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (neg.f64 (*.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 ky (/.f64 (sin.f64 kx) (sin.f64 th))))
(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 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (neg.f64 (*.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 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (neg.f64 (*.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 ky (/.f64 (sin.f64 kx) (sin.f64 th)))))
(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 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (neg.f64 (*.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 -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 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (neg.f64 (*.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 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (neg.f64 (*.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 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 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (neg.f64 (*.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 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 (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 (+.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 ky (/.f64 (sin.f64 kx) (sin.f64 th)))))
(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 (*.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 (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 (sin.f64 th) (/.f64 (sin.f64 kx) ky)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 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 (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 (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 (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 (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 (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 (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 (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 (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 (sin.f64 ky) (*.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)))) (*.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 (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 (sin.f64 ky) (*.f64 (pow.f64 th 5) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (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 (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 (*.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))))))
(fma.f64 1/120 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 5) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (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)))
(fma.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))) (neg.f64 (pow.f64 kx 4)) (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))) (+.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 1/3 (pow.f64 (/.f64 1/2 (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 (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 (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 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) (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)) (fma.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 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (fma.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/4 1/12)))) (neg.f64 (pow.f64 kx 6)) (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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 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 (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 (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 (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 (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 (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 (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 (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 (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 1 (sin.f64 kx))
(+.f64 (/.f64 1 (sin.f64 kx)) (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))))
(+.f64 (/.f64 1 (sin.f64 kx)) (*.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3))))
(fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (/.f64 1 (sin.f64 kx)))
(+.f64 (/.f64 1 (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))))
(fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (/.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 4) (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (/.f64 1 (sin.f64 kx))))
(+.f64 (/.f64 1 (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4)) (*.f64 -1 (*.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)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 5))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 6))))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (fma.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4) (neg.f64 (*.f64 (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)))) (pow.f64 (sin.f64 kx) 3)) (fma.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 6))))))
(+.f64 (/.f64 1 (sin.f64 kx)) (-.f64 (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (*.f64 (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)))) (pow.f64 (sin.f64 kx) 3)) (fma.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 5)) (/.f64 (*.f64 1/2 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6))))
(-.f64 (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (/.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 4) (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (/.f64 1 (sin.f64 kx)))) (*.f64 (fma.f64 1/2 (/.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))) (pow.f64 (sin.f64 kx) 3)) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (/.f64 (fma.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) 1/4 1/12) (pow.f64 (sin.f64 kx) 5)))) (pow.f64 ky 6)))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(/.f64 1 (sin.f64 ky))
(+.f64 (/.f64 1 (sin.f64 ky)) (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))))
(+.f64 (/.f64 1 (sin.f64 ky)) (*.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 3))))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 3)) (/.f64 1 (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 3)) kx) (/.f64 1 (sin.f64 ky)))
(+.f64 (/.f64 1 (sin.f64 ky)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.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 (sin.f64 ky)) (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 3)) (*.f64 (pow.f64 kx 4) (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3)))))))
(fma.f64 (pow.f64 kx 4) (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 3))) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 3)) kx) (/.f64 1 (sin.f64 ky))))
(+.f64 (/.f64 1 (sin.f64 ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 5))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2))) (*.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)))) (pow.f64 (sin.f64 ky) 3))))) (pow.f64 kx 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.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 (sin.f64 ky)) (fma.f64 -1 (*.f64 (pow.f64 kx 6) (fma.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 5)) (*.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 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)))) (pow.f64 (sin.f64 ky) 3)))))) (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 3)) (*.f64 (pow.f64 kx 4) (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3))))))))
(+.f64 (/.f64 1 (sin.f64 ky)) (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 3)) (*.f64 (pow.f64 kx 4) (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3)))))) (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 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)))) (pow.f64 (sin.f64 ky) 3))) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 5)))))))
(-.f64 (fma.f64 (pow.f64 kx 4) (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 3))) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 3)) kx) (/.f64 1 (sin.f64 ky)))) (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 3))) (pow.f64 (sin.f64 ky) 2)) (/.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) 3))) (/.f64 (fma.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/4 1/12) (pow.f64 (sin.f64 ky) 5)))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))

eval333.0ms (1.2%)

Compiler

Compiled 16591 to 7064 computations (57.4% saved)

prune183.0ms (0.6%)

Pruning

50 alts after pruning (47 fresh and 3 done)

PrunedKeptTotal
New72440764
Fresh8715
Picked101
Done235
Total73550785
Error
0b
Counts
785 → 50
Alt Table
Click to see full alt table
StatusErrorProgram
53.4b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
57.0b
th
35.8b
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
48.7b
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
31.8b
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.3b
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
46.8b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
57.6b
(fma.f64 -1/6 (pow.f64 th 3) th)
49.6b
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
49.3b
(expm1.f64 (log1p.f64 (sin.f64 th)))
2.4b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
47.9b
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
47.3b
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
36.5b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
56.8b
(exp.f64 (log.f64 (sin.f64 th)))
49.3b
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))
46.9b
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 kx)))
54.1b
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
49.1b
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
56.8b
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))
0.3b
(/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
38.7b
(/.f64 (*.f64 (sin.f64 th) ky) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))
35.8b
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
47.8b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
0.8b
(/.f64 (sin.f64 th) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 3))
31.8b
(/.f64 (*.f64 (sin.f64 th) ky) (expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
48.3b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
0.3b
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky))))
49.1b
(log.f64 (exp.f64 (sin.f64 th)))
49.3b
(sin.f64 th)
33.7b
(/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
47.9b
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
52.8b
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
46.2b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
47.8b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
47.7b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
57.6b
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
2.3b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
29.8b
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)
46.2b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
47.7b
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
57.6b
(*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
49.3b
(log1p.f64 (expm1.f64 (sin.f64 th)))
56.6b
(pow.f64 (sqrt.f64 (sin.f64 th)) 2)
12.3b
(*.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))
49.1b
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
56.3b
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
29.8b
(*.f64 (sin.f64 th) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) ky)))
Compiler

Compiled 1156 to 845 computations (26.9% saved)

localize10.0ms (0%)

Local error

Found 8 expressions with local error:

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

series10.0ms (0%)

Counts
2 → 60
Calls

15 calls:

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

rewrite56.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
01031
120331
2260031
Stop Event
node limit
Counts
2 → 87
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 ky) (/.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 (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 (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))) 2) 1/2)))) (#(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 pow.f64 (exp.f64 1) (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 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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) 2)) (cbrt.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 pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (sqrt.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 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 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))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.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 exp.f64 (*.f64 (log.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 exp.f64 (*.f64 (log.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 exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 th)) 1) (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.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 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (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 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.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 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 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -2)) (cbrt.f64 (/.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 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.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 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)) (hypot.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)) (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 ky) (cbrt.f64 (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) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (/.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)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 (sqrt.f64 (sin.f64 ky)) (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 ky) (sqrt.f64 (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) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (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 ky)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (sin.f64 ky) (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 (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 ky)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (cbrt.f64 (log.f64 (/.f64 (sin.f64 ky) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.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 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.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 ky) (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) (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) (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) (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 ky))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 ky)) 1) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 ky)) 1) (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))))))

simplify68.0ms (0.2%)

Algorithm
egg-herbie
Rules
915×fma-def_binary64
673×associate-*l*_binary64
402×times-frac_binary64
385×distribute-rgt-in_binary64
373×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01902853
16052823
222482658
Stop Event
node limit
Counts
147 → 128
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 ky (sin.f64 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx))))
(+.f64 (*.f64 -1 (*.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)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/5040 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 ky 7))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.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 4)) 1))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.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 4)) (+.f64 1 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.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 (*.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)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (+.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)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
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 (*.f64 -1/6 (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 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 (*.f64 -1/6 (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 (*.f64 -1/6 (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 -1/2 (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 (*.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) (/.f64 (sin.f64 kx) 1/120)) (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 (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 (*.f64 -1/6 (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 (*.f64 -1/6 (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 (/.f64 (*.f64 -1/6 (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 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 (*.f64 -1/6 (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 -1/2 (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 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 (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 -1/2 (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 (*.f64 -1/2 (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 -1/2 (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 (sin.f64 th) (/.f64 (sin.f64 kx) ky))))
(fma.f64 (-.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) 1/120)) (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 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) 1/120)) (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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 (*.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))
(fma.f64 -1/2 (*.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (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)))
(-.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)))
(fma.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))) (neg.f64 (pow.f64 kx 4)) (fma.f64 -1/2 (*.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (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))) (+.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 (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 (*.f64 1/4 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (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 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 (fma.f64 -1/2 (*.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (sin.f64 th)) (fma.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 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4))) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (fma.f64 1/4 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/12)))) (neg.f64 (pow.f64 kx 6)) (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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 (sin.f64 ky) (*.f64 th (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 (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) (pow.f64 th 3)) (*.f64 -1/6 (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 (sin.f64 ky) (*.f64 (pow.f64 th 5) (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 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (*.f64 -1/6 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(fma.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 (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 (*.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 (sin.f64 ky) (*.f64 (pow.f64 th 5) (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 (+.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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (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 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(/.f64 ky (sin.f64 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx)))
(fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (/.f64 ky (sin.f64 kx)))
(-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))
(fma.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (neg.f64 (pow.f64 ky 3)) (/.f64 ky (sin.f64 kx)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx))))
(fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))))
(-.f64 (fma.f64 (pow.f64 ky 5) (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (/.f64 ky (sin.f64 kx))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))
(-.f64 (fma.f64 (pow.f64 ky 5) (-.f64 (-.f64 (/.f64 1/120 (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))) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))) (/.f64 ky (sin.f64 kx))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))
(+.f64 (*.f64 -1 (*.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)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/5040 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 ky 7))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx)))))
(fma.f64 -1 (*.f64 (pow.f64 ky 7) (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)))) (pow.f64 (sin.f64 kx) 3)) (+.f64 (/.f64 1/5040 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))))) (fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx)))))
(-.f64 (-.f64 (fma.f64 (pow.f64 ky 5) (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (/.f64 ky (sin.f64 kx))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))) (*.f64 (pow.f64 ky 7) (fma.f64 1/2 (/.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))) (pow.f64 (sin.f64 kx) 3)) (fma.f64 1/2 (+.f64 (/.f64 (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (/.f64 1/5040 (sin.f64 kx))))))
(-.f64 (fma.f64 (pow.f64 ky 5) (-.f64 (-.f64 (/.f64 1/120 (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))) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))) (/.f64 ky (sin.f64 kx))) (fma.f64 (pow.f64 ky 7) (fma.f64 1/2 (fma.f64 (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (-.f64 (-.f64 (/.f64 1/120 (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))) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))) (pow.f64 (sin.f64 kx) 2))) (fma.f64 1/2 (/.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))) (pow.f64 (sin.f64 kx) 3)) (/.f64 1/5040 (sin.f64 kx)))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1)
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.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 4)) 1))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (fma.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (fma.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) 1))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (fma.f64 (pow.f64 kx 4) (fma.f64 1/2 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1/4 (pow.f64 (sin.f64 ky) 4))) 1))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.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 4)) (+.f64 1 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.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 (*.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)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (+.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/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (+.f64 (fma.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1) (neg.f64 (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.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)) (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)))) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 4)))))))))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (-.f64 (fma.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) 1) (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (-.f64 (/.f64 1/4 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 ky) 4))) (/.f64 (*.f64 -1/2 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 4))) (fma.f64 1/2 (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 (*.f64 -1/2 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 4))) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 4))))))))
(-.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (fma.f64 (pow.f64 kx 4) (fma.f64 1/2 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1/4 (pow.f64 (sin.f64 ky) 4))) 1)) (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (+.f64 (-.f64 (/.f64 1/4 (pow.f64 (pow.f64 (sin.f64 ky) 2) 3)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4))) (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4)))) (/.f64 (fma.f64 1/4 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/12) (pow.f64 (sin.f64 ky) 4)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.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)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))

localize4.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 -1/6 (pow.f64 th 3))
0.0b
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
0.0b
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
0.1b
(*.f64 -1/6 (pow.f64 th 3))

series14.0ms (0%)

Counts
2 → 3
Calls

6 calls:

TimeVariablePointExpression
11.0ms
th
@inf
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
1.0ms
th
@0
(*.f64 -1/6 (pow.f64 th 3))
1.0ms
th
@inf
(*.f64 -1/6 (pow.f64 th 3))
1.0ms
th
@-inf
(*.f64 -1/6 (pow.f64 th 3))
0.0ms
th
@-inf
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)

rewrite48.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
744×pow1_binary64
702×add-log-exp_binary64
702×log1p-expm1-u_binary64
702×expm1-log1p-u_binary64
688×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0715
115915
2191115
Stop Event
node limit
Counts
2 → 46
Calls
Call 1
Inputs
(*.f64 -1/6 (pow.f64 th 3))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/6 (pow.f64 th 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 -1/6) (pow.f64 th 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -1/6) (pow.f64 th 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/6 (pow.f64 th 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/6 (pow.f64 th 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/6 (pow.f64 th 3))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 -1/6 (pow.f64 th 3) th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 th 6) 1/36) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -1/6 (pow.f64 th 3) th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) (pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 2) (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) (sqrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 th 3) (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216)) (/.f64 1 (+.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th (-.f64 th (*.f64 -1/6 (pow.f64 th 3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th (-.f64 th (*.f64 -1/6 (pow.f64 th 3))))) (+.f64 (pow.f64 th 3) (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th) (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 th 3) (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216)) (+.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th (-.f64 th (*.f64 -1/6 (pow.f64 th 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 th 3) (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216)) (+.f64 (*.f64 th th) (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 (pow.f64 th 3) (*.f64 -1/6 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 th 3) (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))) (neg.f64 (+.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th (-.f64 th (*.f64 -1/6 (pow.f64 th 3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th))) (neg.f64 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 th th) (*.f64 (pow.f64 th 6) 1/36)) (-.f64 th (*.f64 -1/6 (pow.f64 th 3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/6 (pow.f64 th 3) th)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 th 3) -1/6 th)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 th (*.f64 -1/6 (pow.f64 th 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -1/6 (pow.f64 th 3)) th)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 2) (*.f64 th (cbrt.f64 -1/6)) th)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 th) 2) (cbrt.f64 th) (*.f64 -1/6 (pow.f64 th 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 -1/6) (pow.f64 th 3/2)) (*.f64 (sqrt.f64 -1/6) (pow.f64 th 3/2)) th)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 th) (sqrt.f64 th) (*.f64 -1/6 (pow.f64 th 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))))

simplify135.0ms (0.5%)

Algorithm
egg-herbie
Rules
1328×sqr-pow_binary64
715×pow-sqr_binary64
530×cube-prod_binary64
470×fabs-mul_binary64
438×associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0615
11515
23215
35715
411615
531515
6114315
7182815
8191515
9204815
10220615
11243615
12275815
13317915
14367915
15427415
16499615
17531515
18559915
19582115
20600115
21608315
22702315
23799715
Stop Event
node limit
Counts
49 → 48
Calls
Call 1
Inputs
th
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 -1/6 (pow.f64 th 3))
Outputs
th
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 -1/6 (pow.f64 th 3))

localize5.0ms (0%)

Local error

Found 6 expressions with local error:

NewErrorProgram
2.8b
(log.f64 (exp.f64 (sin.f64 th)))
0.1b
(exp.f64 (sin.f64 th))
0.0b
(sin.f64 th)
0.0b
(sin.f64 th)
0.1b
(exp.f64 (sin.f64 th))
2.8b
(log.f64 (exp.f64 (sin.f64 th)))

series2.0ms (0%)

Counts
2 → 16
Calls

6 calls:

TimeVariablePointExpression
0.0ms
th
@0
(log.f64 (exp.f64 (sin.f64 th)))
0.0ms
th
@0
(exp.f64 (sin.f64 th))
0.0ms
th
@-inf
(exp.f64 (sin.f64 th))
0.0ms
th
@inf
(exp.f64 (sin.f64 th))
0.0ms
th
@inf
(log.f64 (exp.f64 (sin.f64 th)))

rewrite44.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
341×pow1_binary64
326×add-sqr-sqrt_binary64
321×*-un-lft-identity_binary64
312×log1p-expm1-u_binary64
312×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058
1798
28568
Stop Event
node limit
Counts
2 → 99
Calls
Call 1
Inputs
(log.f64 (exp.f64 (sin.f64 th)))
(exp.f64 (sin.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 th) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/3 (sin.f64 th)) (*.f64 2 (*.f64 1/3 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 1/3 (sin.f64 th))) (*.f64 1/3 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sin.f64 th)) (*.f64 1/2 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 2 (*.f64 1/3 (sin.f64 th))) 1) (*.f64 (*.f64 1/3 (sin.f64 th)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/2 (sin.f64 th)) 1) (*.f64 (*.f64 1/2 (sin.f64 th)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (+.f64 1 th)) (cos.f64 1)) (*.f64 (cos.f64 (+.f64 1 th)) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 th))))) (#(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 (sqrt.f64 (sin.f64 th)) (sqrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 th) 1/4) (sqrt.f64 (pow.f64 (sin.f64 th) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (*.f64 1/3 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (*.f64 3 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 5/2)) (pow.f64 (sin.f64 th) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) (cbrt.f64 (sin.f64 th))) 2)) (cbrt.f64 (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 5)) (pow.f64 (sin.f64 th) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (sin.f64 th) 3/2)) (pow.f64 (sin.f64 th) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 th) (cbrt.f64 (sin.f64 th))) 2) 1/3) (cbrt.f64 (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (sin.f64 th) 5/2) 1/3) (pow.f64 (sin.f64 th) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (cos.f64 0) (cos.f64 (+.f64 th th)))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 1 (sin.f64 th)) 3) 1) (+.f64 (*.f64 (+.f64 1 (sin.f64 th)) (+.f64 1 (sin.f64 th))) (+.f64 1 (*.f64 (+.f64 1 (sin.f64 th)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 0 (pow.f64 (sin.f64 th) 3)) (+.f64 0 (-.f64 (pow.f64 (sin.f64 th) 2) (*.f64 0 (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 2 (*.f64 1/3 (sin.f64 th))) 3) (pow.f64 (*.f64 1/3 (sin.f64 th)) 3)) (+.f64 (*.f64 (*.f64 2 (*.f64 1/3 (sin.f64 th))) (*.f64 2 (*.f64 1/3 (sin.f64 th)))) (-.f64 (*.f64 (*.f64 1/3 (sin.f64 th)) (*.f64 1/3 (sin.f64 th))) (*.f64 (*.f64 2 (*.f64 1/3 (sin.f64 th))) (*.f64 1/3 (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 1/2 (sin.f64 th)) 3) (pow.f64 (*.f64 1/2 (sin.f64 th)) 3)) (+.f64 (*.f64 (*.f64 1/2 (sin.f64 th)) (*.f64 1/2 (sin.f64 th))) (-.f64 (*.f64 (*.f64 1/2 (sin.f64 th)) (*.f64 1/2 (sin.f64 th))) (*.f64 (*.f64 1/2 (sin.f64 th)) (*.f64 1/2 (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 1/2 (sin.f64 th)) (*.f64 1/2 (sin.f64 th))) (*.f64 (*.f64 1/2 (sin.f64 th)) (*.f64 1/2 (sin.f64 th)))) (-.f64 (*.f64 1/2 (sin.f64 th)) (*.f64 1/2 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 1 (sin.f64 th)) (+.f64 1 (sin.f64 th))) 1) (+.f64 (+.f64 1 (sin.f64 th)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 (sin.f64 th) 2)) (-.f64 0 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 2 (*.f64 1/3 (sin.f64 th))) (*.f64 2 (*.f64 1/3 (sin.f64 th)))) (*.f64 (*.f64 1/3 (sin.f64 th)) (*.f64 1/3 (sin.f64 th)))) (-.f64 (*.f64 2 (*.f64 1/3 (sin.f64 th))) (*.f64 1/3 (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) 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 (sqrt.f64 (sin.f64 th)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sin.f64 th))) 2)) (cbrt.f64 (log.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sin.f64 th)))) (sqrt.f64 (log.f64 (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 fabs.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 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 sin.f64 th)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (sin.f64 th))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 th))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (expm1.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (exp.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (exp.f64 (sin.f64 th))))) (log.f64 (sqrt.f64 (exp.f64 (exp.f64 (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (exp.f64 (sin.f64 th)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (exp.f64 (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (exp.f64 (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (exp.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (sin.f64 th))) (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 th))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 th))) 2) (cbrt.f64 (exp.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (exp.f64 (sin.f64 th))) (sqrt.f64 (exp.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 (sin.f64 th)) 1/4) (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (exp.f64 (sin.f64 th)) (cbrt.f64 (exp.f64 (sin.f64 th)))) 2)) (cbrt.f64 (cbrt.f64 (exp.f64 (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) 5/2)) (pow.f64 (exp.f64 (sin.f64 th)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) 3/2)) (pow.f64 (exp.f64 (sin.f64 th)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 th))) 5)) (pow.f64 (exp.f64 (sin.f64 th)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (exp.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (exp.f64 (sin.f64 th)) (cbrt.f64 (exp.f64 (sin.f64 th)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (exp.f64 (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 th)) 5/2) 1/3) (pow.f64 (exp.f64 (sin.f64 th)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (E.f64) (*.f64 2 (*.f64 1/3 (sin.f64 th)))) (pow.f64 (E.f64) (*.f64 1/3 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (E.f64) (*.f64 1/2 (sin.f64 th))) (pow.f64 (E.f64) (*.f64 1/2 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (exp.f64 (+.f64 1 (sin.f64 th))) (E.f64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (E.f64) (+.f64 1 (sin.f64 th))) (E.f64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 1 (exp.f64 (sin.f64 th))) 3) 1) (+.f64 (*.f64 (+.f64 1 (exp.f64 (sin.f64 th))) (+.f64 1 (exp.f64 (sin.f64 th)))) (+.f64 1 (*.f64 (+.f64 1 (exp.f64 (sin.f64 th))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (expm1.f64 (sin.f64 th)) 3)) (+.f64 1 (-.f64 (pow.f64 (expm1.f64 (sin.f64 th)) 2) (expm1.f64 (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 1 (exp.f64 (sin.f64 th))) (+.f64 1 (exp.f64 (sin.f64 th)))) 1) (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (expm1.f64 (sin.f64 th)) 2)) (-.f64 1 (expm1.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sin.f64 th)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (exp.f64 (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (cbrt.f64 (sin.f64 th))) (pow.f64 (cbrt.f64 (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2)) (cbrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (sin.f64 th))) (sqrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 th))) 2)) (cbrt.f64 (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2)) (pow.f64 (sin.f64 th) 1/6)) (pow.f64 (sin.f64 th) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (sin.f64 th))) (cbrt.f64 (sin.f64 th))) (pow.f64 (sin.f64 th) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (sin.f64 th))) (pow.f64 (sin.f64 th) 1/4)) (pow.f64 (sin.f64 th) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (exp.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 (sin.f64 th))))))))

simplify131.0ms (0.5%)

Algorithm
egg-herbie
Rules
1244×fma-def_binary64
736×sqr-pow_binary64
616×cube-prod_binary64
408×fabs-mul_binary64
401×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
032104
185104
2199104
3548100
41342100
52764100
62984100
73192100
83424100
93704100
104105100
114944100
125505100
136217100
146541100
156935100
167241100
177547100
187879100
Stop Event
node limit
Counts
115 → 113
Calls
Call 1
Inputs
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)
1
(+.f64 1 th)
(+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th))
(+.f64 (*.f64 -1/8 (pow.f64 th 4)) (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
Outputs
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)))
(fma.f64 1/120 (pow.f64 th 5) (fma.f64 -1/6 (pow.f64 th 3) (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)
1
(+.f64 1 th)
(+.f64 th 1)
(+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th))
(fma.f64 1/2 (*.f64 th th) (+.f64 th 1))
(+.f64 th (fma.f64 1/2 (*.f64 th th) 1))
(+.f64 th (fma.f64 th (*.f64 th 1/2) 1))
(fma.f64 (fma.f64 th 1/2 1) th 1)
(fma.f64 th (fma.f64 th 1/2 1) 1)
(+.f64 (*.f64 -1/8 (pow.f64 th 4)) (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
(fma.f64 -1/8 (pow.f64 th 4) (fma.f64 1/2 (*.f64 th th) (+.f64 th 1)))
(fma.f64 -1/8 (pow.f64 th 4) (+.f64 th (fma.f64 1/2 (*.f64 th th) 1)))
(fma.f64 th (*.f64 th 1/2) (fma.f64 -1/8 (pow.f64 th 4) (+.f64 th 1)))
(fma.f64 -1/8 (pow.f64 th 4) (fma.f64 (fma.f64 th 1/2 1) th 1))
(fma.f64 th (fma.f64 th 1/2 1) (fma.f64 -1/8 (pow.f64 th 4) 1))

localize8.0ms (0%)

Local error

Found 6 expressions with local error:

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

series8.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite49.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
518×log-prod_binary64
409×exp-prod_binary64
322×prod-diff_binary64
292×pow-prod-down_binary64
267×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0913
118913
2264313
Stop Event
node limit
Counts
1 → 57
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 2) (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (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)) (*.f64 (sin.f64 ky) (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 th) 1) (/.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(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 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (/.f64 (sin.f64 th) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (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 (pow.f64 (cbrt.f64 (sin.f64 kx)) -2) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 kx))) (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))) (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 kx) -1/2) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (sqrt.f64 (sin.f64 kx))) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.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 (/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 3) (pow.f64 (sin.f64 kx) 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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.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 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.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) (sin.f64 th)) 3) (pow.f64 (sin.f64 kx) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.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 (/.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 (/.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 (/.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 kx) (*.f64 (sin.f64 ky) (sin.f64 th)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 1) 1))))))

simplify41.0ms (0.1%)

Algorithm
egg-herbie
Rules
659×cancel-sign-sub-inv_binary64
565×fma-neg_binary64
395×fma-def_binary64
335×associate-*r*_binary64
332×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
079787
1251764
2798734
33340662
Stop Event
node limit
Counts
93 → 83
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))
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.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))))
(fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))))
(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 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (*.f64 1/120 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 5)))))
(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 (*.f64 1/120 (pow.f64 ky 5)) ky)))
(+.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 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(+.f64 (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 -1/5040 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 7)) (fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (*.f64 1/120 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 5))))))
(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 (*.f64 -1/6 (pow.f64 ky 3)) (*.f64 1/120 (pow.f64 ky 5)))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.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 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 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 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 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 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 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 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) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (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 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx)) (/.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 (sin.f64 ky) (/.f64 (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 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx)) (/.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 (sin.f64 ky) (/.f64 (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 (pow.f64 th 5) (/.f64 (sin.f64 ky) (sin.f64 kx))) (*.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 (*.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 (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 (sin.f64 ky) (/.f64 (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 (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 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/120 (pow.f64 th 5)) (*.f64 -1/5040 (pow.f64 th 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 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 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 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 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 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 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 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 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 ky) kx) (sin.f64 th))
(+.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 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6))))
(*.f64 (sin.f64 ky) (+.f64 (*.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 (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 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (*.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)))))
(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 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (*.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) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6)))) (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) (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 (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 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 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 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 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 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 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 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)))

localize15.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
2.4b
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
0.2b
(/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.1b
(*.f64 (sin.f64 ky) th)
0.1b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.1b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.1b
(*.f64 (sin.f64 ky) th)
0.2b
(/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
2.4b
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))

series12.0ms (0%)

Counts
2 → 40
Calls

15 calls:

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

rewrite53.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
541×log-prod_binary64
415×exp-prod_binary64
331×pow-prod-down_binary64
276×pow2_binary64
205×pow-unpow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
122022
2267722
Stop Event
node limit
Counts
2 → 66
Calls
Call 1
Inputs
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 ky) th)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 (sin.f64 ky) 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 th (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.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 th (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 th (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 (sin.f64 ky) 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)) th))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) th)) 2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (cbrt.f64 (*.f64 (sin.f64 ky) th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (sin.f64 ky) th)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (*.f64 (sin.f64 ky) th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) 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 (*.f64 (sin.f64 ky) th) 1) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) 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 -1 (*.f64 (sin.f64 ky) th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 ky) th) -1) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 ky) 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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (cbrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) 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 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (sqrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) 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 th (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 ky) 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 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) 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 (*.f64 (sin.f64 ky) 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 (*.f64 (sin.f64 ky) 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 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) th)) 1) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 ky) th)) (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) th)) 1) (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) th))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) th)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) th))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) th))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) th))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (*.f64 (sin.f64 ky) th)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) th) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) th) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) th)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) th)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) th))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) th)))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) th))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) th) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) th))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) th))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) th) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) th)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) th)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) th)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) th)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 ky) th))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) th))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) th))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) th)) 1) 1))))))

simplify77.0ms (0.3%)

Algorithm
egg-herbie
Rules
572×fma-neg_binary64
528×fma-def_binary64
392×associate-*r*_binary64
374×associate-*l*_binary64
284×times-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01321571
14141551
214261511
365591511
Stop Event
node limit
Counts
106 → 91
Calls
Call 1
Inputs
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.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 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) th) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (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)))) th) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(*.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 ky) 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 (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 ky) 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 (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 ky) 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 (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 ky) 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 (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 ky) 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 (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 ky) 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 (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 ky) th))
th
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(+.f64 (*.f64 -1 (*.f64 (pow.f64 kx 4) (+.f64 (*.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 th (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) th) (pow.f64 (sin.f64 ky) 2))) (*.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2))) (+.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)))) th) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.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 -1 (*.f64 (pow.f64 kx 4) (+.f64 (*.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 th (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) 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 (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 ky) 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 (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 ky) 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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 th ky)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) th)) (*.f64 th ky)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 ky 7) th)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) th)) (*.f64 th ky))))
Outputs
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(fma.f64 (+.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (/.f64 th (/.f64 (sin.f64 kx) ky)))
(fma.f64 (fma.f64 -1/6 (/.f64 th (sin.f64 kx)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3) (*.f64 (/.f64 th (sin.f64 kx)) ky))
(fma.f64 (*.f64 (/.f64 th (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (/.f64 (*.f64 ky th) (sin.f64 kx)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(fma.f64 (-.f64 (*.f64 (/.f64 th (sin.f64 kx)) 1/120) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (pow.f64 (sin.f64 kx) 3) th)) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (fma.f64 (+.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (/.f64 th (/.f64 (sin.f64 kx) ky))))
(fma.f64 (-.f64 (*.f64 (/.f64 th (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 th (sin.f64 kx)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.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 th (sin.f64 kx)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
(fma.f64 (/.f64 th (sin.f64 kx)) ky (fma.f64 (-.f64 (fma.f64 (/.f64 th (sin.f64 kx)) 1/120 (/.f64 (*.f64 (*.f64 (/.f64 th (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) -1/2) (pow.f64 (sin.f64 kx) 2))) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) th)) (pow.f64 ky 5) (*.f64 (*.f64 (/.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 th (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.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 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) th) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (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)))) th) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(fma.f64 (-.f64 (*.f64 (/.f64 th (sin.f64 kx)) 1/120) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (pow.f64 (sin.f64 kx) 3) th)) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (fma.f64 (+.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (fma.f64 (-.f64 (*.f64 (/.f64 th (sin.f64 kx)) -1/5040) (fma.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 -1/2 (/.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 (*.f64 (/.f64 th (sin.f64 kx)) 1/120) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (pow.f64 (sin.f64 kx) 3) th)) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 th (sin.f64 kx))) (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 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) th)))))) (pow.f64 ky 7) (/.f64 th (/.f64 (sin.f64 kx) ky)))))
(fma.f64 (-.f64 (*.f64 (/.f64 th (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 th (sin.f64 kx)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.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 th (sin.f64 kx)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3) (fma.f64 (-.f64 (/.f64 -1/5040 (/.f64 (sin.f64 kx) th)) (fma.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 (/.f64 th (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 th (sin.f64 kx)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.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 (+.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) th))) (*.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 th (sin.f64 kx)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 7) (*.f64 (/.f64 th (sin.f64 kx)) ky))))
(fma.f64 (-.f64 (fma.f64 (/.f64 th (sin.f64 kx)) 1/120 (/.f64 (*.f64 (*.f64 (/.f64 th (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) -1/2) (pow.f64 (sin.f64 kx) 2))) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) th)) (pow.f64 ky 5) (fma.f64 (-.f64 (/.f64 -1/5040 (/.f64 (sin.f64 kx) th)) (fma.f64 1/2 (fma.f64 (/.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))) (pow.f64 (sin.f64 kx) 3)) th (/.f64 (-.f64 (fma.f64 (/.f64 th (sin.f64 kx)) 1/120 (/.f64 (*.f64 (*.f64 (/.f64 th (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) -1/2) (pow.f64 (sin.f64 kx) 2))) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) th)) (pow.f64 (sin.f64 kx) 2))) (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (/.f64 th (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))))))) (pow.f64 ky 7) (fma.f64 (*.f64 (/.f64 th (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (/.f64 (*.f64 ky th) (sin.f64 kx)))))
(fma.f64 (*.f64 (/.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 th (sin.f64 kx)) 1/120 (/.f64 (*.f64 (*.f64 (/.f64 th (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) -1/2) (pow.f64 (sin.f64 kx) 2))) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) th)) (pow.f64 ky 5) (fma.f64 (-.f64 (/.f64 -1/5040 (/.f64 (sin.f64 kx) th)) (fma.f64 1/2 (fma.f64 (/.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))) (pow.f64 (sin.f64 kx) 3)) th (/.f64 (-.f64 (fma.f64 (/.f64 th (sin.f64 kx)) 1/120 (/.f64 (*.f64 (*.f64 (/.f64 th (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) -1/2) (pow.f64 (sin.f64 kx) 2))) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) th)) (pow.f64 (sin.f64 kx) 2))) (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (/.f64 th (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))))))) (pow.f64 ky 7) (/.f64 (*.f64 ky th) (sin.f64 kx)))))
(*.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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))))))
th
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
(+.f64 (*.f64 -1 (*.f64 (pow.f64 kx 4) (+.f64 (*.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 th (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (/.f64 th (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (*.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4))))) (fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)) th) (/.f64 -1/4 (/.f64 (pow.f64 (sin.f64 ky) 4) th)))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)) th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) th) (pow.f64 (sin.f64 ky) 2))) (*.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2))) (+.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)))) th) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.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 -1 (*.f64 (pow.f64 kx 4) (+.f64 (*.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 th (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)))
(fma.f64 -1 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (/.f64 th (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (*.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (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 (pow.f64 (sin.f64 ky) 2) th)) (*.f64 1/4 (/.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)) (fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (/.f64 th (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (*.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4))))) (fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)))
(fma.f64 (neg.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)) th) (/.f64 -1/4 (/.f64 (pow.f64 (sin.f64 ky) 4) th))) (pow.f64 (sin.f64 ky) 2)) (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 (pow.f64 (sin.f64 ky) 2) th)) (/.f64 (*.f64 (*.f64 1/4 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6) (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)) th) (/.f64 -1/4 (/.f64 (pow.f64 (sin.f64 ky) 4) th))))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th) (fma.f64 (fma.f64 1/2 (*.f64 (/.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/2 (/.f64 (fma.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)) th)) (pow.f64 (sin.f64 ky) 2)) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) 4)) (+.f64 1/12 (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/4))))) (pow.f64 kx 6) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 th (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)) 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 (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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 (+.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 th ky)
(*.f64 ky th)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky))
(fma.f64 -1/6 (*.f64 th (pow.f64 ky 3)) (*.f64 ky th))
(*.f64 th (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 th (fma.f64 -1/6 (pow.f64 ky 3) ky))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) th)) (*.f64 th ky)))
(fma.f64 -1/6 (*.f64 th (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 th (pow.f64 ky 5)) (*.f64 ky th)))
(fma.f64 -1/6 (*.f64 th (pow.f64 ky 3)) (*.f64 th (+.f64 (*.f64 1/120 (pow.f64 ky 5)) ky)))
(*.f64 th (+.f64 ky (fma.f64 -1/6 (pow.f64 ky 3) (*.f64 1/120 (pow.f64 ky 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 ky 7) th)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) th)) (*.f64 th ky))))
(fma.f64 -1/6 (*.f64 th (pow.f64 ky 3)) (fma.f64 -1/5040 (*.f64 th (pow.f64 ky 7)) (fma.f64 1/120 (*.f64 th (pow.f64 ky 5)) (*.f64 ky th))))
(fma.f64 -1/6 (*.f64 th (pow.f64 ky 3)) (fma.f64 -1/5040 (*.f64 th (pow.f64 ky 7)) (*.f64 th (+.f64 (*.f64 1/120 (pow.f64 ky 5)) ky))))
(*.f64 th (+.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)))))

eval298.0ms (1.1%)

Compiler

Compiled 14273 to 6727 computations (52.9% saved)

prune241.0ms (0.9%)

Pruning

69 alts after pruning (62 fresh and 7 done)

PrunedKeptTotal
New69540735
Fresh202242
Picked011
Done167
Total71669785
Error
0b
Counts
785 → 69
Alt Table
Click to see full alt table
StatusErrorProgram
53.4b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
57.0b
th
56.4b
(log.f64 1)
35.8b
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
54.6b
(-.f64 (*.f64 (sin.f64 (+.f64 1 th)) (cos.f64 1)) (*.f64 (cos.f64 (+.f64 1 th)) (sin.f64 1)))
48.7b
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
47.7b
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
31.8b
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.3b
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
33.7b
(/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
46.8b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
46.2b
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx))))
33.8b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
46.2b
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))
49.6b
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
2.4b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
59.5b
(fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
53.8b
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
46.9b
(pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)
46.2b
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th))))
12.3b
(*.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))
57.6b
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
56.8b
(exp.f64 (log.f64 (sin.f64 th)))
49.3b
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))
54.1b
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
54.4b
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 kx)))
53.8b
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
49.1b
(/.f64 (*.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 th)))) (sin.f64 kx))
49.4b
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
49.1b
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
57.5b
(*.f64 -1/6 (pow.f64 th 3))
46.9b
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))
54.4b
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
36.1b
(*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -3))
46.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
56.8b
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))
50.1b
(fabs.f64 (sin.f64 th))
49.3b
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
49.1b
(+.f64 (+.f64 1 (sin.f64 th)) -1)
46.8b
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (sin.f64 kx))
50.6b
(log.f64 (exp.f64 (sqrt.f64 (pow.f64 (sin.f64 th) 2))))
38.7b
(/.f64 (*.f64 (sin.f64 th) ky) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))
35.8b
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
31.8b
(/.f64 (*.f64 (sin.f64 th) ky) (expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
48.3b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
0.3b
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky))))
49.1b
(log.f64 (exp.f64 (sin.f64 th)))
49.3b
(sin.f64 th)
55.2b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (sin.f64 th) (*.f64 kx 1/6)) (/.f64 (sin.f64 th) kx)))
47.8b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
0.3b
(expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))
29.8b
(*.f64 (sin.f64 th) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) ky)))
56.7b
(log.f64 (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
36.5b
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
52.8b
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
2.3b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
48.7b
(*.f64 (*.f64 th ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
54.5b
(*.f64 (/.f64 th (sin.f64 kx)) ky)
29.8b
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)
56.4b
(log.f64 (+.f64 th 1))
54.1b
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx))))
47.7b
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
49.2b
(log.f64 (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1))
55.0b
(/.f64 (*.f64 ky th) (sin.f64 kx))
50.7b
(/.f64 (sqrt.f64 (-.f64 (cos.f64 0) (cos.f64 (+.f64 th th)))) (sqrt.f64 2))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
52.8b
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 ky)))
35.8b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) th)))
Compiler

Compiled 1609 to 1192 computations (25.9% saved)

localize9.0ms (0%)

Local error

Found 8 expressions with local error:

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

series11.0ms (0%)

Counts
2 → 72
Calls

18 calls:

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

rewrite74.0ms (0.3%)

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
01031
120331
2260031
Stop Event
node limit
Counts
2 → 87
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))))) (#(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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))) 1)))) (#(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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 1) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (cbrt.f64 (pow.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 th) (sin.f64 ky)) (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 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))))) (#(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 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))) 2)) (cbrt.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) 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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 ky)) 1) (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.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 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (log.f64 (sqrt.f64 (exp.f64 (/.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 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.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 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) -2)) (cbrt.f64 (/.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 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sqrt.f64 (/.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 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (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)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(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 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) (/.f64 (sin.f64 th) (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 2))) (cbrt.f64 (/.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)) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 2))) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -1/2) (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.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 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.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)) (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 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (hypot.f64 (sin.f64 kx) (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)) (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 kx) (sin.f64 ky))))) 2)) (cbrt.f64 (log.f64 (/.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 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (sqrt.f64 (log.f64 (/.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) (neg.f64 (hypot.f64 (sin.f64 kx) (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 th)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.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 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.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 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.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 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.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 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)) (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 kx) (sin.f64 ky)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 th)) 1) (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sin.f64 th)) (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 th)) 1) (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1)))))))

simplify81.0ms (0.3%)

Algorithm
egg-herbie
Rules
740×associate-*l*_binary64
721×associate-*r*_binary64
536×times-frac_binary64
455×associate-/l*_binary64
370×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01983317
16153286
222223095
Stop Event
node limit
Counts
159 → 136
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)))
(*.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 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))
(/.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))
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 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) 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)))
(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 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 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 1/120 (*.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 5))) (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 1/120 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5))) (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 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 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 (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 5))) (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 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) 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 (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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (/.f64 -1/4 (/.f64 (pow.f64 (sin.f64 ky) 4) (sin.f64 th)))) (pow.f64 kx 4)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) kx) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (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 (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 (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 (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 (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 (pow.f64 (sin.f64 ky) 4) (sin.f64 th)))) (pow.f64 kx 4)))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) kx) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4))) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (*.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/6 (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/2)) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) 1/4) (+.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 (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 (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 (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 (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 (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 (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 (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 (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 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.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 ky (/.f64 (sin.f64 kx) (sin.f64 th))))
(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 (sin.f64 th) (sin.f64 kx)) ky))
(+.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 (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 (/.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 -1/2 (/.f64 (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 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))))
(fma.f64 (+.f64 (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.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 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 (*.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 (sin.f64 th) (sin.f64 kx)) ky)))
(+.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 (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 -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 (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/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 -1/2 (/.f64 (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 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))))) (*.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 -1/2 (/.f64 (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 (+.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))) (*.f64 -1/2 (*.f64 (/.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/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 7)))
(+.f64 (fma.f64 (+.f64 (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.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 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 (*.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 (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 (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.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 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 (/.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 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 (/.f64 (+.f64 1/45 (*.f64 (/.f64 (+.f64 1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) 1/2)) (pow.f64 (sin.f64 kx) 2)) 1/2)) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th))))) (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 (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 (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 (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 (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 (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 (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 (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 (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)))) th)
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 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))
(fma.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 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) th (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 th 3) -1/6)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 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 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (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)))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) th (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (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 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 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 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (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)))) (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)))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) th (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 th 7) -1/5040)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (+.f64 th (*.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)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 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)))
(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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))))))
(-.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (*.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 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (/.f64 (pow.f64 (sin.f64 ky) 3) (sin.f64 th))) (*.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))))) (fma.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 5) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))) (*.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))) (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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)))))))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 kx kx)) (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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)))) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (*.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 (+.f64 1/6 (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/2)) (pow.f64 (sin.f64 ky) 2)))) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3)) (/.f64 (+.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) 1/8) (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (/.f64 (pow.f64 (sin.f64 ky) 3) (sin.f64 th))))) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (/.f64 (pow.f64 (sin.f64 ky) 3) (sin.f64 th))) (*.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 (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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 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)))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) 3)) (/.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)))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) ky) (/.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 (*.f64 (sin.f64 th) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) 3)) (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 ky ky) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))) (-.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 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) ky) (/.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 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 kx) 5))) (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 (*.f64 (sin.f64 th) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) 3)) (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 ky ky) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))) (-.f64 (-.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 (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 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))) (/.f64 (*.f64 (sin.f64 th) 1/4) (/.f64 (pow.f64 (sin.f64 kx) 5) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 6))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) ky) (/.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 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 kx) 5))) (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 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 kx) 5))) (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 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) 1/2)) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) 1/4)))) (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 (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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))

localize1.0ms (0%)

localize6.0ms (0%)

Local error

Found 6 expressions with local error:

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

series11.0ms (0%)

Counts
2 → 44
Calls

15 calls:

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

rewrite51.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 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 ky (sin.f64 th))) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 ky (sin.f64 th)) 1) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 ky (sin.f64 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 (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)) ky) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 ky (neg.f64 (sin.f64 th))) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.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 ky 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.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 (pow.f64 (cbrt.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) (pow.f64 (cbrt.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)) (pow.f64 (cbrt.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 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))))))))

simplify44.0ms (0.2%)

Algorithm
egg-herbie
Rules
607×fma-neg_binary64
597×distribute-rgt-in_binary64
577×fma-def_binary64
566×distribute-lft-in_binary64
353×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
092792
1278769
2887721
33948685
Stop Event
node limit
Counts
97 → 85
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 ky th) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 ky (pow.f64 th 5)) (sin.f64 kx))) (/.f64 (*.f64 ky th) (sin.f64 kx))))
(+.f64 (*.f64 -1/5040 (/.f64 (*.f64 ky (pow.f64 th 7)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 ky (pow.f64 th 5)) (sin.f64 kx))) (/.f64 (*.f64 ky th) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) ky)) (*.f64 -1/36 (*.f64 (sin.f64 th) ky))) (pow.f64 kx 3)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) ky)) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) ky)) (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) ky)) (*.f64 -1/36 (*.f64 (sin.f64 th) ky)))))) (pow.f64 kx 5))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) ky)) (*.f64 -1/36 (*.f64 (sin.f64 th) ky))) (pow.f64 kx 3))))))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) 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 (/.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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 ky th) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 kx)) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(fma.f64 -1/6 (*.f64 (/.f64 ky (sin.f64 kx)) (pow.f64 th 3)) (*.f64 (/.f64 th (sin.f64 kx)) ky))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 ky (sin.f64 kx))) (*.f64 th (/.f64 ky (sin.f64 kx))))
(*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 ky (pow.f64 th 5)) (sin.f64 kx))) (/.f64 (*.f64 ky th) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 kx)) (fma.f64 1/120 (/.f64 ky (/.f64 (sin.f64 kx) (pow.f64 th 5))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(fma.f64 -1/6 (*.f64 (/.f64 ky (sin.f64 kx)) (pow.f64 th 3)) (fma.f64 1/120 (*.f64 (/.f64 ky (sin.f64 kx)) (pow.f64 th 5)) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 ky (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 th 5) (/.f64 ky (sin.f64 kx))) (*.f64 th (/.f64 ky (sin.f64 kx)))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 ky (sin.f64 kx))) (*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 th (*.f64 1/120 (pow.f64 th 5)))))
(+.f64 (*.f64 -1/5040 (/.f64 (*.f64 ky (pow.f64 th 7)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 ky (pow.f64 th 5)) (sin.f64 kx))) (/.f64 (*.f64 ky th) (sin.f64 kx)))))
(fma.f64 -1/5040 (/.f64 ky (/.f64 (sin.f64 kx) (pow.f64 th 7))) (fma.f64 -1/6 (/.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 kx)) (fma.f64 1/120 (/.f64 ky (/.f64 (sin.f64 kx) (pow.f64 th 5))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(fma.f64 -1/5040 (*.f64 (/.f64 ky (sin.f64 kx)) (pow.f64 th 7)) (fma.f64 -1/6 (*.f64 (/.f64 ky (sin.f64 kx)) (pow.f64 th 3)) (fma.f64 1/120 (*.f64 (/.f64 ky (sin.f64 kx)) (pow.f64 th 5)) (*.f64 (/.f64 th (sin.f64 kx)) ky))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 ky (sin.f64 kx))) (fma.f64 -1/5040 (*.f64 (pow.f64 th 7) (/.f64 ky (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 th 5) (/.f64 ky (sin.f64 kx))) (*.f64 th (/.f64 ky (sin.f64 kx))))))
(+.f64 (*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 th (*.f64 1/120 (pow.f64 th 5)))) (*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (*.f64 -1/6 (pow.f64 th 3)))))
(/.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 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(/.f64 (sin.f64 th) (/.f64 kx ky))
(/.f64 ky (/.f64 kx (sin.f64 th)))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(*.f64 (/.f64 ky kx) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx ky)) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx)) (/.f64 ky (/.f64 kx (sin.f64 th))))
(*.f64 ky (fma.f64 (sin.f64 th) (*.f64 kx 1/6) (/.f64 (sin.f64 th) kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) ky)) (*.f64 -1/36 (*.f64 (sin.f64 th) ky))) (pow.f64 kx 3)))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx)) (neg.f64 (*.f64 (*.f64 (*.f64 (sin.f64 th) ky) -7/360) (pow.f64 kx 3)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx)) (/.f64 ky (/.f64 kx (sin.f64 th)))) (*.f64 (*.f64 (sin.f64 th) ky) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (/.f64 (sin.f64 th) kx) ky (*.f64 (*.f64 (sin.f64 th) ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))
(*.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 (*.f64 (sin.f64 th) ky) kx) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) ky)) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) ky)) (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) ky)) (*.f64 -1/36 (*.f64 (sin.f64 th) ky)))))) (pow.f64 kx 5))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) ky)) (*.f64 -1/36 (*.f64 (sin.f64 th) ky))) (pow.f64 kx 3))))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx ky)) (fma.f64 -1 (*.f64 (fma.f64 -1/5040 (*.f64 (sin.f64 th) ky) (fma.f64 1/720 (*.f64 (sin.f64 th) ky) (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) -7/360)))) (pow.f64 kx 5)) (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx)) (neg.f64 (*.f64 (*.f64 (*.f64 (sin.f64 th) ky) -7/360) (pow.f64 kx 3))))))
(+.f64 (/.f64 ky (/.f64 kx (sin.f64 th))) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx)) (neg.f64 (*.f64 (*.f64 (sin.f64 th) ky) (*.f64 -7/360 (pow.f64 kx 3))))) (*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 th) ky) -7/2160) (*.f64 ky (*.f64 (sin.f64 th) 1/840))) (pow.f64 kx 5))))
(-.f64 (fma.f64 (/.f64 (sin.f64 th) kx) ky (*.f64 (*.f64 (sin.f64 th) ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360)))) (*.f64 (*.f64 (*.f64 (sin.f64 th) ky) -31/15120) (pow.f64 kx 5)))
(fma.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 th) ky) 31/15120) (*.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) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (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 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (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))))
(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 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 1/120 (/.f64 (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) (fma.f64 (neg.f64 (*.f64 (sin.f64 th) -7/360)) (pow.f64 kx 3) (/.f64 (sin.f64 th) kx)))
(+.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 (fma.f64 (neg.f64 (*.f64 (sin.f64 th) -7/360)) (pow.f64 kx 3) (/.f64 (sin.f64 th) kx)) (*.f64 (pow.f64 kx 5) (fma.f64 (sin.f64 th) 1/840 (*.f64 (sin.f64 th) -7/2160)))))
(+.f64 (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 (pow.f64 kx 5) (*.f64 (sin.f64 th) -31/15120))) (*.f64 (sin.f64 th) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))
(+.f64 (fma.f64 (pow.f64 kx 5) (*.f64 (sin.f64 th) 31/15120) (/.f64 (sin.f64 th) kx)) (*.f64 (sin.f64 th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))))

localize9.0ms (0%)

Local error

Found 8 expressions with local error:

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

series6.0ms (0%)

Counts
3 → 64
Calls

18 calls:

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

rewrite113.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
536×log-prod_binary64
417×exp-prod_binary64
395×prod-exp_binary64
325×pow-prod-down_binary64
276×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01127
121827
2264027
Stop Event
node limit
Counts
3 → 130
Calls
Call 1
Inputs
(*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))
(/.f64 1 (sin.f64 kx))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 th) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))))) (#(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) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.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 (sqrt.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (sqrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 th) 1) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 th) (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 th)) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 th) -1) (neg.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 (E.f64) (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(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 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 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3)) 1/3)))) (#(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 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))) 2)) (cbrt.f64 (log.f64 (/.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 th) (sin.f64 kx))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 th) (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))))))) (#(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 3 (log.f64 (/.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 th) (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 th)) 1) (log.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sin.f64 th)) (*.f64 (log.f64 (sin.f64 kx)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 th)) 1) (*.f64 (log.f64 (sin.f64 kx)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 th)) 1) (neg.f64 (log.f64 (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (sin.f64 th)) (*.f64 (log.f64 (sin.f64 kx)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 th)) 1) (*.f64 (log.f64 (sin.f64 kx)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (sin.f64 th)) (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 th)) 1) (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) 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 (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) 1) (log.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (neg.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)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) 1) (*.f64 (log.f64 (sin.f64 th)) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 (sin.f64 th) (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) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 1) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -1) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)))) 2)) (cbrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))))) (sqrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 th) (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) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (log.f64 (sin.f64 kx)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 kx)) -1) (log.f64 (*.f64 (sin.f64 th) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) 1) (log.f64 (*.f64 (sin.f64 th) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 1) (log.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (log.f64 (sin.f64 ky)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 1) (*.f64 (log.f64 (sin.f64 ky)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 ky)) 1) (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 ky)) 1) (*.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (log.f64 (sin.f64 kx)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (sin.f64 kx)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (sin.f64 kx))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.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 (cbrt.f64 (sin.f64 kx)) -2) (/.f64 1 (cbrt.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 (/.f64 1 (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (neg.f64 (log.f64 (sin.f64 kx))))))) (#(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 (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 (/.f64 1 (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 (pow.f64 (sin.f64 kx) -1/2) 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 (neg.f64 (neg.f64 (sin.f64 kx))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (neg.f64 (log.f64 (sin.f64 kx)))) 2)) (cbrt.f64 (neg.f64 (log.f64 (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (neg.f64 (log.f64 (sin.f64 kx))))) (sqrt.f64 (neg.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 (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (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 (/.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))))))) (#(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 (neg.f64 (log.f64 (sin.f64 kx))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (*.f64 (log.f64 (sin.f64 kx)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (cbrt.f64 (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 kx)) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 kx)) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) 1) 1))))))

simplify98.0ms (0.3%)

Algorithm
egg-herbie
Rules
811×fma-neg_binary64
707×fma-def_binary64
591×distribute-rgt-in_binary64
464×associate-*l*_binary64
437×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01231171
13821140
211971088
349541004
Stop Event
node limit
Counts
194 → 176
Calls
Call 1
Inputs
(/.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) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (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))))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.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 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 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 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 1/120 (/.f64 (sin.f64 kx) (pow.f64 th 5)))))
(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 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx))))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (/.f64 1/120 (/.f64 (sin.f64 kx) (pow.f64 th 5)))) (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) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.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 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx))
(fma.f64 kx (*.f64 (sin.f64 th) 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 kx (sin.f64 th)) (fma.f64 -1 (*.f64 (*.f64 (sin.f64 th) -7/360) (pow.f64 kx 3)) (/.f64 (sin.f64 th) kx)))
(fma.f64 1/6 (*.f64 kx (sin.f64 th)) (-.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 kx (sin.f64 th)) (fma.f64 -1 (*.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) -7/360) (*.f64 (sin.f64 th) 1/840)) (pow.f64 kx 5)) (fma.f64 -1 (*.f64 (*.f64 (sin.f64 th) -7/360) (pow.f64 kx 3)) (/.f64 (sin.f64 th) kx))))
(fma.f64 1/6 (*.f64 kx (sin.f64 th)) (-.f64 (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 -7/360 (pow.f64 kx 3)))) (*.f64 (fma.f64 (sin.f64 th) 1/840 (*.f64 (sin.f64 th) -7/2160)) (pow.f64 kx 5))))
(+.f64 (*.f64 (sin.f64 th) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))) (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 (*.f64 (sin.f64 th) -31/15120) (pow.f64 kx 5))))
(+.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)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(/.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 -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 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 3)))))
(fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (/.f64 (sin.f64 kx) (sin.f64 th))) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)))
(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) (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(+.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 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 3))))))
(+.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 5)))) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (/.f64 (sin.f64 kx) (sin.f64 th))) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))))
(fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 5)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (*.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 (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 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 3)))))))
(+.f64 (fma.f64 -1/5040 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 7))) (*.f64 1/120 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 5))))) (fma.f64 -1/6 (/.f64 (pow.f64 ky 3) (/.f64 (sin.f64 kx) (sin.f64 th))) (/.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/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 5)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))))
(+.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) (*.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 (*.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 (*.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 (*.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 (*.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 (*.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 (*.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 (*.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 (*.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 th (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 (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 (/.f64 th (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 (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 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (*.f64 (/.f64 th (sin.f64 kx)) (sin.f64 ky))))
(fma.f64 1/120 (*.f64 (pow.f64 th 5) (/.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 -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 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) (/.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (/.f64 th (sin.f64 kx)) (sin.f64 ky)))))
(+.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 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.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 (*.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 (*.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 (*.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 (*.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 (*.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 (*.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 (*.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 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(+.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 kx (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (fma.f64 kx (*.f64 (sin.f64 th) 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 (pow.f64 kx 3) (*.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 (fma.f64 1/6 (*.f64 kx (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))) (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) -7/360))))
(fma.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) 7/360)) (*.f64 (sin.f64 ky) (fma.f64 kx (*.f64 (sin.f64 th) 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 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360)) (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 kx (*.f64 (sin.f64 th) (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 (sin.f64 ky) (*.f64 (sin.f64 th) 1/840))))) (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) -7/360))))
(-.f64 (*.f64 (sin.f64 ky) (fma.f64 kx (*.f64 (sin.f64 th) 1/6) (/.f64 (sin.f64 th) kx))) (fma.f64 (pow.f64 kx 3) (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) -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 (*.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 (*.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 (*.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 (*.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 (*.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 (*.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 (*.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 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)))
(fma.f64 (pow.f64 kx 3) 7/360 (fma.f64 kx 1/6 (/.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))))
(fma.f64 kx 1/6 (fma.f64 (pow.f64 kx 3) 7/360 (fma.f64 (pow.f64 kx 5) 31/15120 (/.f64 1 kx))))

localize11.0ms (0%)

Local error

Found 8 expressions with local error:

NewErrorProgram
3.6b
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
2.1b
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
0.3b
(pow.f64 (sin.f64 ky) 2)
0.0b
(sin.f64 th)
0.3b
(pow.f64 (sin.f64 ky) 2)
2.1b
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
3.6b
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
5.2b
(/.f64 (pow.f64 (sin.f64 ky) 2) kx)

series18.0ms (0.1%)

Counts
3 → 64
Calls

21 calls:

TimeVariablePointExpression
3.0ms
ky
@0
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
2.0ms
kx
@0
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
2.0ms
ky
@inf
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
1.0ms
ky
@-inf
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
1.0ms
kx
@inf
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))

rewrite65.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
658×log-prod_binary64
354×pow-prod-down_binary64
347×pow2_binary64
244×pow1/3_binary64
240×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify66.0ms (0.2%)

Algorithm
egg-herbie
Rules
730×cancel-sign-sub-inv_binary64
587×fma-def_binary64
429×associate-*l*_binary64
405×associate-*r*_binary64
392×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01051501
12961474
29881313
351501265
Stop Event
node limit
Counts
171 → 147
Calls
Call 1
Inputs
(/.f64 (pow.f64 ky 2) kx)
(+.f64 (*.f64 -1/3 (/.f64 (pow.f64 ky 4) kx)) (/.f64 (pow.f64 ky 2) kx))
(+.f64 (*.f64 -1/3 (/.f64 (pow.f64 ky 4) kx)) (+.f64 (*.f64 2/45 (/.f64 (pow.f64 ky 6) kx)) (/.f64 (pow.f64 ky 2) kx)))
(+.f64 (*.f64 -1/3 (/.f64 (pow.f64 ky 4) kx)) (+.f64 (*.f64 -1/315 (/.f64 (pow.f64 ky 8) kx)) (+.f64 (*.f64 2/45 (/.f64 (pow.f64 ky 6) kx)) (/.f64 (pow.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))) (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))) (sin.f64 th))
(*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2)))
(+.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))) (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 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2)))
(+.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))) (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 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 ky 2)))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 kx 2))) (sin.f64 th)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 ky 2))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 kx 2))) (sin.f64 th)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (*.f64 (sin.f64 th) (pow.f64 ky 2)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 ky 2)))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 kx 2))) (sin.f64 th)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 2/135 (pow.f64 kx 2)) (+.f64 (*.f64 1/3 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2)))) (*.f64 -1/315 (pow.f64 kx 2)))) (pow.f64 ky 4)))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (*.f64 (sin.f64 th) (pow.f64 ky 2)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 ky 2))))))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) th)
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) th))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 3))) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) th) (*.f64 1/120 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 3))) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) th) (+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 5))) (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 7))))))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 ky 2))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (*.f64 1/3 (pow.f64 kx 2)))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (*.f64 1/3 (pow.f64 kx 2))))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/135 (pow.f64 kx 2)) (+.f64 (*.f64 -1/315 (pow.f64 kx 2)) (*.f64 1/3 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2)))))) (pow.f64 ky 4))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (*.f64 1/3 (pow.f64 kx 2)))))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
Outputs
(/.f64 (pow.f64 ky 2) kx)
(/.f64 (*.f64 ky ky) kx)
(/.f64 ky (/.f64 kx ky))
(+.f64 (*.f64 -1/3 (/.f64 (pow.f64 ky 4) kx)) (/.f64 (pow.f64 ky 2) kx))
(fma.f64 -1/3 (/.f64 (pow.f64 ky 4) kx) (/.f64 (*.f64 ky ky) kx))
(fma.f64 -1/3 (/.f64 (pow.f64 ky 4) kx) (/.f64 ky (/.f64 kx ky)))
(+.f64 (*.f64 -1/3 (/.f64 (pow.f64 ky 4) kx)) (+.f64 (*.f64 2/45 (/.f64 (pow.f64 ky 6) kx)) (/.f64 (pow.f64 ky 2) kx)))
(fma.f64 -1/3 (/.f64 (pow.f64 ky 4) kx) (fma.f64 2/45 (/.f64 (pow.f64 ky 6) kx) (/.f64 (*.f64 ky ky) kx)))
(fma.f64 -1/3 (/.f64 (pow.f64 ky 4) kx) (fma.f64 2/45 (/.f64 (pow.f64 ky 6) kx) (/.f64 ky (/.f64 kx ky))))
(+.f64 (*.f64 -1/3 (/.f64 (pow.f64 ky 4) kx)) (+.f64 (*.f64 -1/315 (/.f64 (pow.f64 ky 8) kx)) (+.f64 (*.f64 2/45 (/.f64 (pow.f64 ky 6) kx)) (/.f64 (pow.f64 ky 2) kx))))
(fma.f64 -1/3 (/.f64 (pow.f64 ky 4) kx) (fma.f64 -1/315 (/.f64 (pow.f64 ky 8) kx) (fma.f64 2/45 (/.f64 (pow.f64 ky 6) kx) (/.f64 (*.f64 ky ky) kx))))
(fma.f64 -1/3 (/.f64 (pow.f64 ky 4) kx) (fma.f64 -1/315 (/.f64 (pow.f64 ky 8) kx) (fma.f64 2/45 (/.f64 (pow.f64 ky 6) kx) (/.f64 ky (/.f64 kx ky)))))
(fma.f64 -1/3 (/.f64 (pow.f64 ky 4) kx) (fma.f64 2/45 (/.f64 (pow.f64 ky 6) kx) (fma.f64 -1/315 (/.f64 (pow.f64 ky 8) kx) (/.f64 ky (/.f64 kx ky)))))
(fma.f64 -1/315 (/.f64 (pow.f64 ky 8) kx) (fma.f64 -1/3 (/.f64 (pow.f64 ky 4) kx) (fma.f64 2/45 (/.f64 (pow.f64 ky 6) kx) (/.f64 ky (/.f64 kx 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 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(+.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))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(+.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))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2)))
(*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))))
(/.f64 -1/2 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th)) (*.f64 kx kx)))
(/.f64 (*.f64 (sin.f64 th) (*.f64 -1/2 (*.f64 kx kx))) (pow.f64 (sin.f64 ky) 2))
(+.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))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(+.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))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(+.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))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2)))
(*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))))
(/.f64 -1/2 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th)) (*.f64 kx kx)))
(/.f64 (*.f64 (sin.f64 th) (*.f64 -1/2 (*.f64 kx kx))) (pow.f64 (sin.f64 ky) 2))
(+.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))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(+.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))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(+.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))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 ky 2)))
(*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (*.f64 ky ky) (*.f64 kx kx))))
(*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) ky) (/.f64 (*.f64 kx kx) ky)))
(*.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (sin.f64 th) (*.f64 ky ky))))
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 kx 2))) (sin.f64 th)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 ky 2))))
(fma.f64 (+.f64 1 (*.f64 (*.f64 kx kx) -1/6)) (sin.f64 th) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (*.f64 ky ky) (*.f64 kx kx)))))
(fma.f64 (sin.f64 th) (fma.f64 (*.f64 kx kx) -1/6 1) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) ky) (/.f64 (*.f64 kx kx) ky))))
(fma.f64 (sin.f64 th) (fma.f64 kx (*.f64 kx -1/6) 1) (*.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (sin.f64 th) (*.f64 ky ky)))))
(+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky)))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 kx 2))) (sin.f64 th)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (*.f64 (sin.f64 th) (pow.f64 ky 2)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 ky 2)))))
(fma.f64 (+.f64 1 (*.f64 (*.f64 kx kx) -1/6)) (sin.f64 th) (fma.f64 1/2 (*.f64 (*.f64 (*.f64 (*.f64 kx kx) -1/15) (sin.f64 th)) (*.f64 ky ky)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (*.f64 ky ky) (*.f64 kx kx))))))
(fma.f64 (sin.f64 th) (fma.f64 (*.f64 kx kx) -1/6 1) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) ky) (/.f64 (*.f64 kx kx) ky)) (*.f64 1/2 (*.f64 (*.f64 ky ky) (*.f64 (sin.f64 th) (*.f64 kx (*.f64 kx -1/15)))))))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 (sin.f64 th) (+.f64 (*.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) -1/30)) (fma.f64 kx (*.f64 kx -1/6) 1))))
(fma.f64 (*.f64 ky (*.f64 ky (sin.f64 th))) (*.f64 (*.f64 kx kx) -1/30) (+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky))))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 kx 2))) (sin.f64 th)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 2/135 (pow.f64 kx 2)) (+.f64 (*.f64 1/3 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2)))) (*.f64 -1/315 (pow.f64 kx 2)))) (pow.f64 ky 4)))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (*.f64 (sin.f64 th) (pow.f64 ky 2)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 ky 2))))))
(fma.f64 (+.f64 1 (*.f64 (*.f64 kx kx) -1/6)) (sin.f64 th) (fma.f64 1/2 (*.f64 (sin.f64 th) (*.f64 (pow.f64 ky 4) (fma.f64 2/135 (*.f64 kx kx) (fma.f64 -1/315 (*.f64 kx kx) (*.f64 (*.f64 (*.f64 kx kx) -1/15) 1/3))))) (fma.f64 1/2 (*.f64 (*.f64 (*.f64 (*.f64 kx kx) -1/15) (sin.f64 th)) (*.f64 ky ky)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (*.f64 ky ky) (*.f64 kx kx)))))))
(fma.f64 (sin.f64 th) (fma.f64 (*.f64 kx kx) -1/6 1) (fma.f64 1/2 (*.f64 (+.f64 (*.f64 (*.f64 kx kx) -1/45) (*.f64 (*.f64 kx kx) 11/945)) (*.f64 (pow.f64 ky 4) (sin.f64 th))) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) ky) (/.f64 (*.f64 kx kx) ky)) (*.f64 1/2 (*.f64 (*.f64 ky ky) (*.f64 (sin.f64 th) (*.f64 kx (*.f64 kx -1/15))))))))
(fma.f64 (sin.f64 th) (fma.f64 kx (*.f64 kx -1/6) 1) (fma.f64 1/2 (*.f64 (sin.f64 th) (fma.f64 (pow.f64 ky 4) (*.f64 (*.f64 kx kx) -2/189) (*.f64 ky (*.f64 (*.f64 ky (*.f64 kx kx)) -1/15)))) (*.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (sin.f64 th) (*.f64 ky ky))))))
(fma.f64 1/2 (*.f64 (sin.f64 th) (fma.f64 (pow.f64 ky 4) (*.f64 (*.f64 kx kx) -2/189) (*.f64 ky (*.f64 kx (*.f64 (*.f64 kx -1/15) ky))))) (+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky))))))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) th)
(*.f64 th (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1))
(*.f64 th (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(fma.f64 th (/.f64 (*.f64 -1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) th))
(fma.f64 -1/6 (*.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (pow.f64 th 3)) (*.f64 th (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1)))
(fma.f64 th (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (*.f64 -1/6 (*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (pow.f64 th 3))))
(*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 3))) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) th) (*.f64 1/120 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 5)))))
(fma.f64 -1/6 (*.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (pow.f64 th 3)) (fma.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) th (*.f64 1/120 (*.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (pow.f64 th 5)))))
(fma.f64 -1/6 (*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (pow.f64 th 3)) (fma.f64 th (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (*.f64 (pow.f64 th 5) 1/120))))
(fma.f64 (pow.f64 th 3) (+.f64 -1/6 (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1/12)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (+.f64 th (*.f64 1/120 (pow.f64 th 5)))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (+.f64 th (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 3))) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) th) (+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 5))) (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (pow.f64 th 7))))))
(fma.f64 -1/6 (*.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (pow.f64 th 3)) (fma.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) th (fma.f64 1/120 (*.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (pow.f64 th 5)) (*.f64 -1/5040 (*.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (pow.f64 th 7))))))
(fma.f64 -1/6 (*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (pow.f64 th 3)) (fma.f64 th (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (fma.f64 1/120 (*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (pow.f64 th 5)) (*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (*.f64 (pow.f64 th 7) -1/5040)))))
(+.f64 (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (+.f64 (*.f64 1/120 (pow.f64 th 5)) (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (+.f64 (+.f64 th (*.f64 1/120 (pow.f64 th 5))) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (*.f64 -1/6 (pow.f64 th 3)))))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (sin.f64 th) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 ky 2))
(/.f64 (*.f64 kx kx) (*.f64 ky ky))
(*.f64 (/.f64 kx ky) (/.f64 kx ky))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (*.f64 1/3 (pow.f64 kx 2)))
(+.f64 (/.f64 (*.f64 kx kx) (*.f64 ky ky)) (*.f64 (*.f64 kx kx) 1/3))
(fma.f64 (*.f64 kx kx) 1/3 (*.f64 (/.f64 kx ky) (/.f64 kx ky)))
(fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) 1/3))
(*.f64 kx (+.f64 (/.f64 kx (*.f64 ky ky)) (*.f64 kx 1/3)))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (*.f64 1/3 (pow.f64 kx 2))))
(+.f64 (/.f64 (*.f64 kx kx) (*.f64 ky ky)) (fma.f64 -1 (*.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) -1/15)) (*.f64 (*.f64 kx kx) 1/3)))
(+.f64 (*.f64 (/.f64 kx ky) (/.f64 kx ky)) (fma.f64 (neg.f64 (*.f64 kx (*.f64 kx -1/15))) (*.f64 ky ky) (*.f64 kx (*.f64 kx 1/3))))
(fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (-.f64 1/3 (*.f64 (*.f64 ky ky) -1/15))))
(fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (+.f64 1/3 (*.f64 (*.f64 ky ky) 1/15))))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/135 (pow.f64 kx 2)) (+.f64 (*.f64 -1/315 (pow.f64 kx 2)) (*.f64 1/3 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2)))))) (pow.f64 ky 4))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (*.f64 1/3 (pow.f64 kx 2)))))
(+.f64 (/.f64 (*.f64 kx kx) (*.f64 ky ky)) (fma.f64 -1 (*.f64 (pow.f64 ky 4) (fma.f64 2/135 (*.f64 kx kx) (fma.f64 -1/315 (*.f64 kx kx) (*.f64 (*.f64 (*.f64 kx kx) -1/15) 1/3)))) (fma.f64 -1 (*.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) -1/15)) (*.f64 (*.f64 kx kx) 1/3))))
(+.f64 (*.f64 (/.f64 kx ky) (/.f64 kx ky)) (fma.f64 (neg.f64 (+.f64 (*.f64 (*.f64 kx kx) -1/45) (*.f64 (*.f64 kx kx) 11/945))) (pow.f64 ky 4) (fma.f64 (neg.f64 (*.f64 kx (*.f64 kx -1/15))) (*.f64 ky ky) (*.f64 kx (*.f64 kx 1/3)))))
(-.f64 (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (-.f64 1/3 (*.f64 (*.f64 ky ky) -1/15)))) (*.f64 (pow.f64 ky 4) (*.f64 (*.f64 kx kx) -2/189)))
(fma.f64 (pow.f64 ky 4) (*.f64 (*.f64 kx kx) 2/189) (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (+.f64 1/3 (*.f64 (*.f64 ky ky) 1/15)))))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)

eval266.0ms (0.9%)

Compiler

Compiled 14182 to 6819 computations (51.9% saved)

prune195.0ms (0.7%)

Pruning

88 alts after pruning (77 fresh and 11 done)

PrunedKeptTotal
New69030720
Fresh104757
Picked101
Done01111
Total70188789
Error
0b
Counts
789 → 88
Alt Table
Click to see full alt table
StatusErrorProgram
53.4b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
57.0b
th
56.4b
(log.f64 1)
47.7b
(*.f64 ky (/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (sin.f64 kx)))
62.4b
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
35.8b
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
54.6b
(-.f64 (*.f64 (sin.f64 (+.f64 1 th)) (cos.f64 1)) (*.f64 (cos.f64 (+.f64 1 th)) (sin.f64 1)))
48.7b
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
47.7b
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
31.8b
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.3b
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
33.7b
(/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
46.8b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
46.2b
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx))))
33.8b
(*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
56.4b
(*.f64 ky (/.f64 (exp.f64 (log.f64 (sin.f64 th))) (sin.f64 kx)))
62.7b
(/.f64 (*.f64 (sin.f64 th) (*.f64 -1/2 (*.f64 kx kx))) (pow.f64 (sin.f64 ky) 2))
53.0b
(*.f64 ky (/.f64 (sin.f64 th) kx))
46.2b
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))
33.8b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
49.6b
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
2.4b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
59.5b
(fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
46.2b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
46.9b
(pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)
46.2b
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th))))
35.9b
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th) (sin.f64 ky))
57.6b
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
12.3b
(*.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))
56.4b
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
49.6b
(*.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
53.0b
(*.f64 (/.f64 ky kx) (sin.f64 th))
56.8b
(exp.f64 (log.f64 (sin.f64 th)))
53.9b
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
49.3b
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))
55.2b
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/6 kx) (/.f64 1 kx))))
54.1b
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
53.6b
(/.f64 (*.f64 (sin.f64 th) ky) kx)
49.1b
(/.f64 (*.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 th)))) (sin.f64 kx))
49.4b
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
49.1b
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
57.5b
(*.f64 -1/6 (pow.f64 th 3))
46.9b
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))
36.1b
(*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -3))
56.8b
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))
50.1b
(fabs.f64 (sin.f64 th))
49.3b
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
49.1b
(+.f64 (+.f64 1 (sin.f64 th)) -1)
46.8b
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (sin.f64 kx))
55.8b
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) kx)) 1) (sin.f64 th))
50.6b
(log.f64 (exp.f64 (sqrt.f64 (pow.f64 (sin.f64 th) 2))))
38.7b
(/.f64 (*.f64 (sin.f64 th) ky) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))
52.3b
(*.f64 (sin.f64 ky) (log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
55.7b
(*.f64 (fma.f64 -1/2 (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (+.f64 1/3 (*.f64 (*.f64 ky ky) 1/15)))) 1) (sin.f64 th))
50.7b
(*.f64 ky (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
48.4b
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky (sin.f64 th))))
31.8b
(/.f64 (*.f64 (sin.f64 th) ky) (expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
53.8b
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
49.1b
(log.f64 (exp.f64 (sin.f64 th)))
48.3b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
0.3b
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky))))
49.3b
(sin.f64 th)
47.7b
(*.f64 ky (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
54.8b
(*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
0.3b
(*.f64 (/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
54.4b
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
47.8b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
29.8b
(*.f64 (sin.f64 th) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) ky)))
56.7b
(log.f64 (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
54.4b
(*.f64 th (/.f64 ky (sin.f64 kx)))
52.8b
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
54.5b
(*.f64 (/.f64 th (sin.f64 kx)) ky)
48.7b
(*.f64 (*.f64 th ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
29.8b
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)
56.4b
(log.f64 (+.f64 th 1))
54.1b
(+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky)))))
54.1b
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx))))
47.7b
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
2.3b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
53.0b
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (*.f64 ky ky) kx)) 1) (sin.f64 th))
49.2b
(log.f64 (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1))
55.0b
(/.f64 (*.f64 ky th) (sin.f64 kx))
50.7b
(/.f64 (sqrt.f64 (-.f64 (cos.f64 0) (cos.f64 (+.f64 th th)))) (sqrt.f64 2))
53.9b
(*.f64 (sin.f64 ky) (*.f64 th (/.f64 1 (sin.f64 kx))))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
52.8b
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 ky)))
35.8b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) th)))
Compiler

Compiled 1108 to 810 computations (26.9% saved)

regimes873.0ms (3.1%)

Counts
132 → 1
Calls
Call 1
Inputs
th
(log.f64 1)
(sin.f64 th)
(log.f64 (+.f64 th 1))
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(*.f64 (/.f64 ky kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
(+.f64 (+.f64 1 (sin.f64 th)) -1)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
(fabs.f64 (sin.f64 th))
(fma.f64 -1/6 (pow.f64 th 3) th)
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky (sin.f64 th))))
(*.f64 ky (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 th (/.f64 1 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 ky)))
(log.f64 (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
(*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/6 kx) (/.f64 1 kx))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (*.f64 ky ky) kx)) 1) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky)))))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(exp.f64 (log.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(log1p.f64 (expm1.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))
(pow.f64 (sqrt.f64 (sin.f64 th)) 2)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(log.f64 (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th))))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 th ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (*.f64 -1/2 (*.f64 kx kx))) (pow.f64 (sin.f64 ky) 2))
(fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (sin.f64 th) (*.f64 kx 1/6)) (/.f64 (sin.f64 th) kx)))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) kx)) 1) (sin.f64 th))
(*.f64 (fma.f64 -1/2 (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (+.f64 1/3 (*.f64 (*.f64 ky ky) 1/15)))) 1) (sin.f64 th))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 ky (/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (/.f64 (exp.f64 (log.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)
(/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sqrt.f64 (-.f64 (cos.f64 0) (cos.f64 (+.f64 th th)))) (sqrt.f64 2))
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) th)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) ky)))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(-.f64 (*.f64 (sin.f64 (+.f64 1 th)) (cos.f64 1)) (*.f64 (cos.f64 (+.f64 1 th)) (sin.f64 1)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx))))
(log.f64 (exp.f64 (sqrt.f64 (pow.f64 (sin.f64 th) 2))))
(*.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 th)))) (sin.f64 kx))
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (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 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) ky) (expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -3))
(/.f64 (*.f64 (sin.f64 th) ky) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 ky) 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 th (*.f64 (sin.f64 ky) (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 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(*.f64 (/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))
(/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (sin.f64 th)))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 3))
(pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))) 3)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
Calls

12 calls:

83.0ms
(sin.f64 th)
83.0ms
(sin.f64 kx)
78.0ms
th
74.0ms
ky
74.0ms
kx
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 (/.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 1409 to 557 computations (60.5% saved)

regimes527.0ms (1.9%)

Counts
107 → 1
Calls
Call 1
Inputs
th
(log.f64 1)
(sin.f64 th)
(log.f64 (+.f64 th 1))
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(*.f64 (/.f64 ky kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
(+.f64 (+.f64 1 (sin.f64 th)) -1)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
(fabs.f64 (sin.f64 th))
(fma.f64 -1/6 (pow.f64 th 3) th)
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky (sin.f64 th))))
(*.f64 ky (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 th (/.f64 1 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 ky)))
(log.f64 (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
(*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/6 kx) (/.f64 1 kx))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (*.f64 ky ky) kx)) 1) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky)))))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(exp.f64 (log.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(log1p.f64 (expm1.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))
(pow.f64 (sqrt.f64 (sin.f64 th)) 2)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(log.f64 (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th))))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 th ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (*.f64 -1/2 (*.f64 kx kx))) (pow.f64 (sin.f64 ky) 2))
(fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (sin.f64 th) (*.f64 kx 1/6)) (/.f64 (sin.f64 th) kx)))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) kx)) 1) (sin.f64 th))
(*.f64 (fma.f64 -1/2 (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (+.f64 1/3 (*.f64 (*.f64 ky ky) 1/15)))) 1) (sin.f64 th))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 ky (/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (/.f64 (exp.f64 (log.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)
(/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sqrt.f64 (-.f64 (cos.f64 0) (cos.f64 (+.f64 th th)))) (sqrt.f64 2))
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) th)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) ky)))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(-.f64 (*.f64 (sin.f64 (+.f64 1 th)) (cos.f64 1)) (*.f64 (cos.f64 (+.f64 1 th)) (sin.f64 1)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx))))
(log.f64 (exp.f64 (sqrt.f64 (pow.f64 (sin.f64 th) 2))))
(*.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 th)))) (sin.f64 kx))
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
Outputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
Calls

6 calls:

105.0ms
ky
103.0ms
(sin.f64 th)
95.0ms
kx
69.0ms
(sin.f64 kx)
65.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
0.3b1kx
0.3b1ky
0.3b1th
0.3b1(sin.f64 ky)
0.3b1(sin.f64 kx)
0.3b1(sin.f64 th)
Compiler

Compiled 972 to 383 computations (60.6% saved)

regimes574.0ms (2%)

Counts
105 → 1
Calls
Call 1
Inputs
th
(log.f64 1)
(sin.f64 th)
(log.f64 (+.f64 th 1))
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(*.f64 (/.f64 ky kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
(+.f64 (+.f64 1 (sin.f64 th)) -1)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
(fabs.f64 (sin.f64 th))
(fma.f64 -1/6 (pow.f64 th 3) th)
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky (sin.f64 th))))
(*.f64 ky (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 th (/.f64 1 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 ky)))
(log.f64 (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
(*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/6 kx) (/.f64 1 kx))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (*.f64 ky ky) kx)) 1) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky)))))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(exp.f64 (log.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(log1p.f64 (expm1.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))
(pow.f64 (sqrt.f64 (sin.f64 th)) 2)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(log.f64 (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th))))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 th ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (*.f64 -1/2 (*.f64 kx kx))) (pow.f64 (sin.f64 ky) 2))
(fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (sin.f64 th) (*.f64 kx 1/6)) (/.f64 (sin.f64 th) kx)))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) kx)) 1) (sin.f64 th))
(*.f64 (fma.f64 -1/2 (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (+.f64 1/3 (*.f64 (*.f64 ky ky) 1/15)))) 1) (sin.f64 th))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 ky (/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (/.f64 (exp.f64 (log.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)
(/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sqrt.f64 (-.f64 (cos.f64 0) (cos.f64 (+.f64 th th)))) (sqrt.f64 2))
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) th)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) ky)))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(-.f64 (*.f64 (sin.f64 (+.f64 1 th)) (cos.f64 1)) (*.f64 (cos.f64 (+.f64 1 th)) (sin.f64 1)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx))))
(log.f64 (exp.f64 (sqrt.f64 (pow.f64 (sin.f64 th) 2))))
(*.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 th)))) (sin.f64 kx))
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
Outputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
Calls

6 calls:

141.0ms
(sin.f64 th)
107.0ms
th
98.0ms
ky
68.0ms
kx
63.0ms
(sin.f64 kx)
Results
ErrorSegmentsBranch
0.3b1kx
0.3b1ky
0.3b1th
0.3b1(sin.f64 ky)
0.3b1(sin.f64 kx)
0.3b1(sin.f64 th)
Compiler

Compiled 950 to 379 computations (60.1% saved)

regimes2.4s (8.3%)

Counts
104 → 3
Calls
Call 1
Inputs
th
(log.f64 1)
(sin.f64 th)
(log.f64 (+.f64 th 1))
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(*.f64 (/.f64 ky kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
(+.f64 (+.f64 1 (sin.f64 th)) -1)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
(fabs.f64 (sin.f64 th))
(fma.f64 -1/6 (pow.f64 th 3) th)
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky (sin.f64 th))))
(*.f64 ky (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 th (/.f64 1 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 ky)))
(log.f64 (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
(*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/6 kx) (/.f64 1 kx))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (*.f64 ky ky) kx)) 1) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky)))))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(exp.f64 (log.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(log1p.f64 (expm1.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))
(pow.f64 (sqrt.f64 (sin.f64 th)) 2)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(log.f64 (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th))))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 th ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (*.f64 -1/2 (*.f64 kx kx))) (pow.f64 (sin.f64 ky) 2))
(fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (sin.f64 th) (*.f64 kx 1/6)) (/.f64 (sin.f64 th) kx)))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) kx)) 1) (sin.f64 th))
(*.f64 (fma.f64 -1/2 (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (+.f64 1/3 (*.f64 (*.f64 ky ky) 1/15)))) 1) (sin.f64 th))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 ky (/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (/.f64 (exp.f64 (log.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)
(/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sqrt.f64 (-.f64 (cos.f64 0) (cos.f64 (+.f64 th th)))) (sqrt.f64 2))
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) th)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) ky)))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (sin.f64 th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(-.f64 (*.f64 (sin.f64 (+.f64 1 th)) (cos.f64 1)) (*.f64 (cos.f64 (+.f64 1 th)) (sin.f64 1)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx))))
(log.f64 (exp.f64 (sqrt.f64 (pow.f64 (sin.f64 th) 2))))
(*.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) (log.f64 (exp.f64 (sin.f64 th)))) (sin.f64 kx))
(/.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (sin.f64 kx))
Outputs
(/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky)
(sin.f64 th)
Calls

8 calls:

464.0ms
ky
461.0ms
kx
313.0ms
(sin.f64 kx)
263.0ms
th
240.0ms
(sin.f64 th)
Results
ErrorSegmentsBranch
24.0b8kx
16.2b5ky
17.2b3th
14.1b3(sin.f64 ky)
14.1b3(sin.f64 ky)
24.0b6(sin.f64 kx)
17.3b3(sin.f64 th)
17.3b3(sin.f64 th)
Compiler

Compiled 949 to 385 computations (59.4% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.719133389224246e-5
0.000951788975697793
0.0ms
-0.08451654646121196
-7.811506376576562e-9
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes1.7s (5.9%)

Counts
88 → 5
Calls
Call 1
Inputs
th
(log.f64 1)
(sin.f64 th)
(log.f64 (+.f64 th 1))
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(*.f64 (/.f64 ky kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
(+.f64 (+.f64 1 (sin.f64 th)) -1)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
(fabs.f64 (sin.f64 th))
(fma.f64 -1/6 (pow.f64 th 3) th)
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky (sin.f64 th))))
(*.f64 ky (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 th (/.f64 1 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 ky)))
(log.f64 (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
(*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/6 kx) (/.f64 1 kx))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (*.f64 ky ky) kx)) 1) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky)))))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(exp.f64 (log.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(log1p.f64 (expm1.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))
(pow.f64 (sqrt.f64 (sin.f64 th)) 2)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(log.f64 (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th))))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 th ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (*.f64 -1/2 (*.f64 kx kx))) (pow.f64 (sin.f64 ky) 2))
(fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (sin.f64 th) (*.f64 kx 1/6)) (/.f64 (sin.f64 th) kx)))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) kx)) 1) (sin.f64 th))
(*.f64 (fma.f64 -1/2 (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (+.f64 1/3 (*.f64 (*.f64 ky ky) 1/15)))) 1) (sin.f64 th))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 ky (/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (/.f64 (exp.f64 (log.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) th))
(pow.f64 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)
(/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
Outputs
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(sin.f64 th)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(sin.f64 th)
Calls

8 calls:

265.0ms
ky
231.0ms
(sin.f64 th)
224.0ms
(sin.f64 th)
223.0ms
th
196.0ms
kx
Results
ErrorSegmentsBranch
30.2b5kx
29.5b5ky
23.7b5th
28.1b3(sin.f64 ky)
28.1b3(sin.f64 ky)
27.4b4(sin.f64 kx)
24.2b4(sin.f64 th)
24.2b4(sin.f64 th)
Compiler

Compiled 765 to 313 computations (59.1% saved)

bsearch627.0ms (2.2%)

Algorithm
binary-search
Steps
TimeLeftRight
138.0ms
8.080884089779525e+20
6.41735246043954e+35
141.0ms
-209707512066.2862
-33962.871780394664
144.0ms
-7.786478892497165e+78
-2.8322236961156264e+71
203.0ms
-3.111273379169212e+239
-9.169600730166176e+232
Compiler

Compiled 25 to 19 computations (24% saved)

regimes1.5s (5.3%)

Counts
84 → 5
Calls
Call 1
Inputs
th
(log.f64 1)
(sin.f64 th)
(log.f64 (+.f64 th 1))
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(*.f64 (/.f64 ky kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
(+.f64 (+.f64 1 (sin.f64 th)) -1)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
(fabs.f64 (sin.f64 th))
(fma.f64 -1/6 (pow.f64 th 3) th)
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky (sin.f64 th))))
(*.f64 ky (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 th (/.f64 1 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 ky)))
(log.f64 (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
(*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/6 kx) (/.f64 1 kx))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (*.f64 ky ky) kx)) 1) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky)))))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(exp.f64 (log.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(log1p.f64 (expm1.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))
(pow.f64 (sqrt.f64 (sin.f64 th)) 2)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(log.f64 (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th))))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 th ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (*.f64 -1/2 (*.f64 kx kx))) (pow.f64 (sin.f64 ky) 2))
(fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (sin.f64 th) (*.f64 kx 1/6)) (/.f64 (sin.f64 th) kx)))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) kx)) 1) (sin.f64 th))
(*.f64 (fma.f64 -1/2 (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (+.f64 1/3 (*.f64 (*.f64 ky ky) 1/15)))) 1) (sin.f64 th))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 ky (/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (/.f64 (exp.f64 (log.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
Outputs
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(sin.f64 th)
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(sin.f64 th)
Calls

8 calls:

225.0ms
ky
208.0ms
th
194.0ms
(sin.f64 th)
189.0ms
kx
187.0ms
(sin.f64 th)
Results
ErrorSegmentsBranch
30.2b5kx
29.5b5ky
23.7b5th
28.1b3(sin.f64 ky)
28.1b3(sin.f64 ky)
27.4b4(sin.f64 kx)
24.3b4(sin.f64 th)
24.3b4(sin.f64 th)
Compiler

Compiled 725 to 304 computations (58.1% saved)

bsearch624.0ms (2.2%)

Algorithm
binary-search
Steps
TimeLeftRight
137.0ms
8.080884089779525e+20
6.41735246043954e+35
141.0ms
-209707512066.2862
-33962.871780394664
143.0ms
-7.786478892497165e+78
-2.8322236961156264e+71
202.0ms
-3.111273379169212e+239
-9.169600730166176e+232
Compiler

Compiled 25 to 19 computations (24% saved)

regimes1.6s (5.6%)

Counts
83 → 4
Calls
Call 1
Inputs
th
(log.f64 1)
(sin.f64 th)
(log.f64 (+.f64 th 1))
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(*.f64 (/.f64 ky kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
(+.f64 (+.f64 1 (sin.f64 th)) -1)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
(fabs.f64 (sin.f64 th))
(fma.f64 -1/6 (pow.f64 th 3) th)
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky (sin.f64 th))))
(*.f64 ky (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 th (/.f64 1 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 ky)))
(log.f64 (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
(*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/6 kx) (/.f64 1 kx))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (*.f64 ky ky) kx)) 1) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky)))))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(exp.f64 (log.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(log1p.f64 (expm1.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))
(pow.f64 (sqrt.f64 (sin.f64 th)) 2)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(log.f64 (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 kx) (sin.f64 th))))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 th ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (*.f64 -1/2 (*.f64 kx kx))) (pow.f64 (sin.f64 ky) 2))
(fma.f64 -1/2 (/.f64 (*.f64 th (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) th)
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (sin.f64 th) (*.f64 kx 1/6)) (/.f64 (sin.f64 th) kx)))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) kx)) 1) (sin.f64 th))
(*.f64 (fma.f64 -1/2 (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (+.f64 1/3 (*.f64 (*.f64 ky ky) 1/15)))) 1) (sin.f64 th))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 ky (/.f64 (expm1.f64 (log1p.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (/.f64 (exp.f64 (log.f64 (sin.f64 th))) (sin.f64 kx)))
(*.f64 ky (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
Outputs
(fabs.f64 (sin.f64 th))
(/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(sin.f64 th)
Calls

8 calls:

209.0ms
th
201.0ms
(sin.f64 ky)
198.0ms
(sin.f64 th)
190.0ms
(sin.f64 th)
189.0ms
(sin.f64 kx)
Results
ErrorSegmentsBranch
36.1b4kx
35.9b4ky
38.3b5th
32.8b4(sin.f64 ky)
32.8b4(sin.f64 ky)
34.0b4(sin.f64 kx)
38.9b4(sin.f64 th)
38.9b4(sin.f64 th)
Compiler

Compiled 715 to 301 computations (57.9% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.12649105432794e-66
1.299704942791396e-64
0.0ms
-1.2641300286337167e-121
-4.424126628694144e-139
0.0ms
-0.08451654646121196
-7.811506376576562e-9
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes754.0ms (2.7%)

Counts
64 → 3
Calls
Call 1
Inputs
th
(log.f64 1)
(sin.f64 th)
(log.f64 (+.f64 th 1))
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(*.f64 (/.f64 ky kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
(+.f64 (+.f64 1 (sin.f64 th)) -1)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
(fabs.f64 (sin.f64 th))
(fma.f64 -1/6 (pow.f64 th 3) th)
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 ky (sin.f64 ky)) (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 ky (sin.f64 th))))
(*.f64 ky (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 th (/.f64 1 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 ky) th) (/.f64 1 (sin.f64 ky)))
(log.f64 (+.f64 (*.f64 1/2 (pow.f64 th 2)) (+.f64 1 th)))
(*.f64 (/.f64 ky (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/6 kx) (/.f64 1 kx))))
(*.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (*.f64 ky ky) kx)) 1) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky kx))))
(+.f64 (sin.f64 th) (*.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (+.f64 -1/6 (/.f64 -1/2 (*.f64 ky ky)))))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(exp.f64 (log.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(log1p.f64 (expm1.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))
(pow.f64 (sqrt.f64 (sin.f64 th)) 2)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(log.f64 (+.f64 (+.f64 1 (exp.f64 (sin.f64 th))) -1))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
Outputs
(fabs.f64 (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(sin.f64 th)
Calls

7 calls:

156.0ms
th
125.0ms
(sin.f64 th)
111.0ms
kx
87.0ms
(sin.f64 ky)
87.0ms
(sin.f64 kx)
Results
ErrorSegmentsBranch
36.1b4kx
38.3b3ky
41.7b4th
34.6b3(sin.f64 ky)
34.6b3(sin.f64 ky)
35.4b3(sin.f64 kx)
42.2b3(sin.f64 th)
Compiler

Compiled 487 to 204 computations (58.1% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.12649105432794e-66
1.299704942791396e-64
0.0ms
-6.297087340585145e-73
-5.937900456267584e-75
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes377.0ms (1.3%)

Counts
22 → 5
Calls
Call 1
Inputs
th
(log.f64 1)
(sin.f64 th)
(log.f64 (+.f64 th 1))
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(*.f64 (/.f64 ky kx) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 1/3 (*.f64 3 (sin.f64 th)))
(*.f64 3 (*.f64 1/3 (sin.f64 th)))
(+.f64 (+.f64 1 (sin.f64 th)) -1)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (/.f64 -1/2 ky) (/.f64 (*.f64 kx kx) (/.f64 ky (sin.f64 th))))
(fabs.f64 (sin.f64 th))
(fma.f64 -1/6 (pow.f64 th 3) th)
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 kx)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) kx) (sin.f64 th))
Outputs
(fabs.f64 (sin.f64 th))
(*.f64 ky (/.f64 (sin.f64 th) kx))
(sin.f64 th)
(*.f64 (/.f64 ky kx) (sin.f64 th))
(sin.f64 th)
Calls

9 calls:

59.0ms
ky
49.0ms
(sin.f64 ky)
49.0ms
(sin.f64 ky)
40.0ms
(sin.f64 kx)
40.0ms
(sin.f64 kx)
Results
ErrorSegmentsBranch
42.1b4kx
40.2b6ky
45.6b3th
37.4b5(sin.f64 ky)
37.4b5(sin.f64 ky)
41.7b4(sin.f64 kx)
41.7b4(sin.f64 kx)
45.6b3(sin.f64 th)
45.6b3(sin.f64 th)
Compiler

Compiled 169 to 95 computations (43.8% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.12649105432794e-66
1.299704942791396e-64
0.0ms
9.17795208823107e-155
1.5936600672071968e-153
0.0ms
5.619515716599004e-240
4.08029770259043e-237
0.0ms
-1.0926949316900256e-99
-1.0150703967959248e-101
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes312.0ms (1.1%)

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

7 calls:

91.0ms
ky
85.0ms
(sin.f64 kx)
34.0ms
(sin.f64 kx)
25.0ms
(sin.f64 th)
24.0ms
kx
Results
ErrorSegmentsBranch
43.7b3kx
40.2b6ky
45.8b3th
42.5b4(sin.f64 kx)
42.5b4(sin.f64 kx)
45.8b3(sin.f64 th)
45.8b3(sin.f64 th)
Compiler

Compiled 122 to 74 computations (39.3% saved)

bsearch783.0ms (2.8%)

Algorithm
binary-search
Steps
TimeLeftRight
200.0ms
5.12649105432794e-66
1.299704942791396e-64
134.0ms
9.17795208823107e-155
1.5936600672071968e-153
141.0ms
5.619515716599004e-240
4.08029770259043e-237
141.0ms
-5.6396857552704094e-154
-2.4880600108319868e-158
166.0ms
-4611816452890.469
-0.8465853572532189
Compiler

Compiled 25 to 19 computations (24% saved)

regimes268.0ms (1%)

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

7 calls:

81.0ms
ky
53.0ms
(sin.f64 kx)
46.0ms
(sin.f64 kx)
22.0ms
th
21.0ms
(sin.f64 th)
Results
ErrorSegmentsBranch
43.7b3kx
40.2b6ky
45.8b3th
42.5b4(sin.f64 kx)
42.5b4(sin.f64 kx)
45.8b3(sin.f64 th)
45.8b3(sin.f64 th)
Compiler

Compiled 97 to 61 computations (37.1% saved)

bsearch781.0ms (2.8%)

Algorithm
binary-search
Steps
TimeLeftRight
147.0ms
5.12649105432794e-66
1.299704942791396e-64
142.0ms
9.17795208823107e-155
1.5936600672071968e-153
127.0ms
5.619515716599004e-240
4.08029770259043e-237
192.0ms
-2.342585222820516e-162
-8.349363746528993e-167
172.0ms
-4611816452890.469
-0.8465853572532189
Compiler

Compiled 25 to 19 computations (24% saved)

regimes96.0ms (0.3%)

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

4 calls:

31.0ms
(sin.f64 th)
26.0ms
ky
21.0ms
th
16.0ms
kx
Results
ErrorSegmentsBranch
44.2b3kx
41.6b5ky
46.0b3th
46.0b3(sin.f64 th)
Compiler

Compiled 52 to 32 computations (38.5% saved)

bsearch569.0ms (2%)

Algorithm
binary-search
Steps
TimeLeftRight
138.0ms
5.12649105432794e-66
1.299704942791396e-64
153.0ms
9.17795208823107e-155
1.5936600672071968e-153
130.0ms
5.619515716599004e-240
4.08029770259043e-237
148.0ms
-6436289373947435.0
-4611816452890.469
Compiler

Compiled 25 to 19 computations (24% saved)

regimes84.0ms (0.3%)

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

4 calls:

23.0ms
th
23.0ms
(sin.f64 th)
23.0ms
ky
14.0ms
kx
Results
ErrorSegmentsBranch
44.2b3kx
41.6b5ky
46.0b3th
46.0b3(sin.f64 th)
Compiler

Compiled 40 to 28 computations (30% saved)

bsearch636.0ms (2.3%)

Algorithm
binary-search
Steps
TimeLeftRight
143.0ms
5.12649105432794e-66
1.299704942791396e-64
165.0ms
9.17795208823107e-155
1.5936600672071968e-153
177.0ms
5.619515716599004e-240
4.08029770259043e-237
151.0ms
-6436289373947435.0
-4611816452890.469
Compiler

Compiled 25 to 19 computations (24% saved)

regimes64.0ms (0.2%)

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

4 calls:

17.0ms
th
17.0ms
(sin.f64 th)
17.0ms
kx
12.0ms
ky
Results
ErrorSegmentsBranch
46.3b3kx
45.0b3ky
46.3b3th
46.3b3(sin.f64 th)
Compiler

Compiled 34 to 26 computations (23.5% saved)

bsearch301.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
135.0ms
5.619515716599004e-240
4.08029770259043e-237
165.0ms
-6436289373947435.0
-4611816452890.469
Compiler

Compiled 25 to 19 computations (24% saved)

regimes34.0ms (0.1%)

Accuracy

Total -9.2b remaining (-17.5%)

Threshold costs -9.2b (-17.5%)

Counts
2 → 3
Calls
Call 1
Inputs
th
(log.f64 1)
Outputs
th
(log.f64 1)
th
Calls

3 calls:

14.0ms
th
10.0ms
ky
9.0ms
kx
Results
ErrorSegmentsBranch
53.2b3kx
52.7b3ky
53.8b4th
Compiler

Compiled 18 to 14 computations (22.2% saved)

bsearch283.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
126.0ms
5.619515716599004e-240
4.08029770259043e-237
156.0ms
-6436289373947435.0
-4611816452890.469
Compiler

Compiled 25 to 19 computations (24% saved)

simplify11.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0111671
1121671
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -922337203685477632/18446744073709551616) (/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (if (<=.f64 (sin.f64 ky) 5902958103587057/295147905179352825856) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky) (sin.f64 th)))
(if (<=.f64 th -311127337916921197687972891403343490181073754683608898250641727422697592095242275818740136012205147283582407365682961628284900130386420279871496913320076729351229405865389678961781865896460374001479513764521557147683515085926945535018663936) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)) (if (<=.f64 th -7786478892497165327764592251869715387982281487659165833250086323659214342324224) (sin.f64 th) (if (<=.f64 th -3435847877694033/16384) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)) (if (<=.f64 th 808088408977952473088) (/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th)))))
(if (<=.f64 th -311127337916921197687972891403343490181073754683608898250641727422697592095242275818740136012205147283582407365682961628284900130386420279871496913320076729351229405865389678961781865896460374001479513764521557147683515085926945535018663936) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)) (if (<=.f64 th -7786478892497165327764592251869715387982281487659165833250086323659214342324224) (sin.f64 th) (if (<=.f64 th -3435847877694033/16384) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)) (if (<=.f64 th 808088408977952473088) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -922337203685477632/18446744073709551616) (fabs.f64 (sin.f64 th)) (if (<=.f64 (sin.f64 ky) -1162941958872971/11629419588729710248789180926208072549658261770997088964503843186890228609814366773219056811420217048972200345700258846936553626057834496) (/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (sin.f64 ky) 4742843975160471/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 th))))
(if (<=.f64 (sin.f64 ky) -3978585891278293/7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896) (fabs.f64 (sin.f64 th)) (if (<=.f64 (sin.f64 ky) 4742843975160471/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -39402006196394480/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (fabs.f64 (sin.f64 th)) (if (<=.f64 (sin.f64 ky) 2346099009001469/234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 (sin.f64 ky) 3019169939857233/30191699398572330817932436647906151127335369763331523427009650401964993299137190816689013801421270140331747000246110759198164677039398341060491474011461568349195162615808) (sin.f64 th) (if (<=.f64 (sin.f64 ky) 4742843975160471/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (*.f64 (/.f64 ky kx) (sin.f64 th)) (sin.f64 th)))))
(if (<=.f64 ky -147578126492495/32) (sin.f64 th) (if (<=.f64 ky -1064198106409591/1886981212410770676120777290494134445458460610208220214188103150122812081196074426043063362588829383770734187515381922449885292314962396316280717125716348021824697663488) (/.f64 (*.f64 ky th) (sin.f64 kx)) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 (/.f64 ky kx) (sin.f64 th)) (sin.f64 th))))))
(if (<=.f64 ky -147578126492495/32) (sin.f64 th) (if (<=.f64 ky -4746383717541153/2026130648867672343023636652192949780767796011837127392576004555513014068072709055859231957493703024554784124321924213467966382361040905912054138102594708831572842677442143322112) (*.f64 th (/.f64 ky (sin.f64 kx))) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 (/.f64 ky kx) (sin.f64 th)) (sin.f64 th))))))
(if (<=.f64 ky -6436289373947435) (sin.f64 th) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 (/.f64 ky kx) (sin.f64 th)) (sin.f64 th)))))
(if (<=.f64 ky -6436289373947435) (sin.f64 th) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 ky (/.f64 (sin.f64 th) kx)) (sin.f64 th)))))
(if (<=.f64 ky -6436289373947435) (sin.f64 th) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (log.f64 1) (sin.f64 th)))
(if (<=.f64 ky -6436289373947435) th (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (log.f64 1) th))
th
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -922337203685477632/18446744073709551616) (/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (if (<=.f64 (sin.f64 ky) 5902958103587057/295147905179352825856) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) ky) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -3602879701896397/72057594037927936) (/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (if (<=.f64 (sin.f64 ky) 5902958103587057/295147905179352825856) (*.f64 ky (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th)))
(if (<=.f64 th -311127337916921197687972891403343490181073754683608898250641727422697592095242275818740136012205147283582407365682961628284900130386420279871496913320076729351229405865389678961781865896460374001479513764521557147683515085926945535018663936) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)) (if (<=.f64 th -7786478892497165327764592251869715387982281487659165833250086323659214342324224) (sin.f64 th) (if (<=.f64 th -3435847877694033/16384) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)) (if (<=.f64 th 808088408977952473088) (/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th)))))
(if (<=.f64 th -311127337916921197687972891403343490181073754683608898250641727422697592095242275818740136012205147283582407365682961628284900130386420279871496913320076729351229405865389678961781865896460374001479513764521557147683515085926945535018663936) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) (if (<=.f64 th -7786478892497165327764592251869715387982281487659165833250086323659214342324224) (sin.f64 th) (if (<=.f64 th -3435847877694033/16384) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) (if (<=.f64 th 808088408977952473088) (/.f64 th (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th)))))
(if (<=.f64 th -311127337916921197687972891403343490181073754683608898250641727422697592095242275818740136012205147283582407365682961628284900130386420279871496913320076729351229405865389678961781865896460374001479513764521557147683515085926945535018663936) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)) (if (<=.f64 th -7786478892497165327764592251869715387982281487659165833250086323659214342324224) (sin.f64 th) (if (<=.f64 th -3435847877694033/16384) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (sin.f64 ky)) (if (<=.f64 th 808088408977952473088) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)) (sin.f64 th)))))
(if (<=.f64 th -311127337916921197687972891403343490181073754683608898250641727422697592095242275818740136012205147283582407365682961628284900130386420279871496913320076729351229405865389678961781865896460374001479513764521557147683515085926945535018663936) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) (if (<=.f64 th -7786478892497165327764592251869715387982281487659165833250086323659214342324224) (sin.f64 th) (if (<=.f64 th -3435847877694033/16384) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))) (if (<=.f64 th 808088408977952473088) (*.f64 (sin.f64 ky) (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -922337203685477632/18446744073709551616) (fabs.f64 (sin.f64 th)) (if (<=.f64 (sin.f64 ky) -1162941958872971/11629419588729710248789180926208072549658261770997088964503843186890228609814366773219056811420217048972200345700258846936553626057834496) (/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (sin.f64 ky) 4742843975160471/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 th))))
(if (<=.f64 (sin.f64 ky) -3602879701896397/72057594037927936) (fabs.f64 (sin.f64 th)) (if (<=.f64 (sin.f64 ky) -1162941958872971/11629419588729710248789180926208072549658261770997088964503843186890228609814366773219056811420217048972200345700258846936553626057834496) (/.f64 (*.f64 th ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (sin.f64 ky) 4742843975160471/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 th))))
(if (<=.f64 (sin.f64 ky) -3978585891278293/7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896) (fabs.f64 (sin.f64 th)) (if (<=.f64 (sin.f64 ky) 4742843975160471/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -39402006196394480/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (fabs.f64 (sin.f64 th)) (if (<=.f64 (sin.f64 ky) 2346099009001469/234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 (sin.f64 ky) 3019169939857233/30191699398572330817932436647906151127335369763331523427009650401964993299137190816689013801421270140331747000246110759198164677039398341060491474011461568349195162615808) (sin.f64 th) (if (<=.f64 (sin.f64 ky) 4742843975160471/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (*.f64 (/.f64 ky kx) (sin.f64 th)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -2462625387274655/2462625387274654950767440006258975862817483704404090416746768337765357610718575663213391640930307227550414249394176) (fabs.f64 (sin.f64 th)) (if (<=.f64 (sin.f64 ky) 2346099009001469/234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 (sin.f64 ky) 3019169939857233/30191699398572330817932436647906151127335369763331523427009650401964993299137190816689013801421270140331747000246110759198164677039398341060491474011461568349195162615808) (sin.f64 th) (if (<=.f64 (sin.f64 ky) 4742843975160471/474284397516047136454946754595585670566993857190463750305618264096412179005177856) (*.f64 (sin.f64 th) (/.f64 ky kx)) (sin.f64 th)))))
(if (<=.f64 ky -147578126492495/32) (sin.f64 th) (if (<=.f64 ky -1064198106409591/1886981212410770676120777290494134445458460610208220214188103150122812081196074426043063362588829383770734187515381922449885292314962396316280717125716348021824697663488) (/.f64 (*.f64 ky th) (sin.f64 kx)) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 (/.f64 ky kx) (sin.f64 th)) (sin.f64 th))))))
(if (<=.f64 ky -147578126492495/32) (sin.f64 th) (if (<=.f64 ky -1064198106409591/1886981212410770676120777290494134445458460610208220214188103150122812081196074426043063362588829383770734187515381922449885292314962396316280717125716348021824697663488) (/.f64 (*.f64 th ky) (sin.f64 kx)) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 (sin.f64 th) (/.f64 ky kx)) (sin.f64 th))))))
(if (<=.f64 ky -147578126492495/32) (sin.f64 th) (if (<=.f64 ky -4746383717541153/2026130648867672343023636652192949780767796011837127392576004555513014068072709055859231957493703024554784124321924213467966382361040905912054138102594708831572842677442143322112) (*.f64 th (/.f64 ky (sin.f64 kx))) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 (/.f64 ky kx) (sin.f64 th)) (sin.f64 th))))))
(if (<=.f64 ky -147578126492495/32) (sin.f64 th) (if (<=.f64 ky -4746383717541153/2026130648867672343023636652192949780767796011837127392576004555513014068072709055859231957493703024554784124321924213467966382361040905912054138102594708831572842677442143322112) (*.f64 th (/.f64 ky (sin.f64 kx))) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 (sin.f64 th) (/.f64 ky kx)) (sin.f64 th))))))
(if (<=.f64 ky -6436289373947435) (sin.f64 th) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 (/.f64 ky kx) (sin.f64 th)) (sin.f64 th)))))
(if (<=.f64 ky -6436289373947435) (sin.f64 th) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 (sin.f64 th) (/.f64 ky kx)) (sin.f64 th)))))
(if (<=.f64 ky -6436289373947435) (sin.f64 th) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (*.f64 ky (/.f64 (sin.f64 th) kx)) (if (<=.f64 ky 5541959410847433/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (sin.f64 th) (if (<=.f64 ky 4862829442146665/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (*.f64 ky (/.f64 (sin.f64 th) kx)) (sin.f64 th)))))
(if (<=.f64 ky -6436289373947435) (sin.f64 th) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (log.f64 1) (sin.f64 th)))
(if (<=.f64 ky -6436289373947435) (sin.f64 th) (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) 0 (sin.f64 th)))
(if (<=.f64 ky -6436289373947435) th (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) (log.f64 1) th))
(if (<=.f64 ky -6436289373947435) th (if (<=.f64 ky 5273576101512441/938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328) 0 th))
th

end161.0ms (0.6%)

Stop Event
fuel
Compiler

Compiled 921 to 420 computations (54.4% saved)

Profiling

Loading profile data...