Toniolo and Linder, Equation (3b), real

Time bar (total: 9.6s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze216.0ms (2.2%)

Memory
17.6MiB live, 299.0MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
25%25%74.9%0.1%0%0%0%5
43.8%43.7%56.2%0.1%0%0%0%6
43.8%43.7%56.2%0.1%0%0%0%7
53.1%53%46.8%0.1%0%0%0%8
60.9%60.8%39%0.1%0%0%0%9
60.9%60.8%39%0.1%0%0%0%10
64.8%64.7%35.1%0.1%0%0%0%11
68.4%68.3%31.6%0.1%0%0%0%12
Compiler

Compiled 18 to 14 computations (22.2% saved)

sample1.8s (18.9%)

Memory
42.4MiB live, 1 904.5MiB allocated
Samples
1.4s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.1s
ival-sin: 641.0ms (57.9% of total)
ival-pow2: 161.0ms (14.5% of total)
ival-mult: 118.0ms (10.7% of total)
ival-sqrt: 86.0ms (7.8% of total)
ival-div: 52.0ms (4.7% of total)
ival-add: 38.0ms (3.4% of total)
ival-true: 7.0ms (0.6% of total)
ival-assert: 4.0ms (0.4% of total)
Bogosity

explain458.0ms (4.7%)

Memory
-6.9MiB live, 445.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
140-0-(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
00-0-(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
00-0-(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
00-0-(sin.f64 kx)
00-0-(sin.f64 th)
00-0-(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
00-0-(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
00-0-th
00-0-#s(literal 2 binary64)
00-0-(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
00-0-(sin.f64 ky)
00-0-ky
00-0-kx
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))uflow-rescue140
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))underflow65
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))underflow54
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))underflow14
Confusion
Predicted +Predicted -
+140
-0242
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+1400
-00242
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0242
114
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
104.0ms512×0valid
Compiler

Compiled 284 to 93 computations (67.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 84.0ms
ival-pow2: 36.0ms (42.8% of total)
ival-sin: 35.0ms (41.6% of total)
ival-div: 3.0ms (3.6% of total)
ival-mult: 3.0ms (3.6% of total)
ival-sqrt: 3.0ms (3.6% of total)
ival-add: 2.0ms (2.4% of total)
ival-true: 1.0ms (1.2% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess83.0ms (0.9%)

Memory
0.4MiB live, 39.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045153
1101147
2211147
3383147
4831147
51949147
62504147
72781147
82893147
92943147
102958147
112958147
01316
02216
12816
23216
33316
03311
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
Symmetry

(abs kx)

(negabs th)

(negabs ky)

Compiler

Compiled 16 to 13 computations (18.8% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
94.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Compiler

Compiled 16 to 13 computations (18.8% saved)

simplify3.0ms (0%)

Memory
4.9MiB live, 4.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
cost-diff7424
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01366
02266
12866
23266
33366
03351
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 th)
th
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 th)
th

localize90.0ms (0.9%)

Memory
1.3MiB live, 81.6MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.16015625
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
accuracy0.21484375
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy0.2734375
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy3.368806192132544
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Samples
61.0ms256×0valid
Compiler

Compiled 134 to 28 computations (79.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 50.0ms
ival-sqrt: 22.0ms (43.6% of total)
ival-sin: 19.0ms (37.6% of total)
ival-pow2: 5.0ms (9.9% of total)
ival-div: 2.0ms (4% of total)
ival-mult: 2.0ms (4% of total)
ival-add: 1.0ms (2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series76.0ms (0.8%)

Memory
-18.8MiB live, 57.7MiB allocated
Counts
6 → 45
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(pow (sin kx) 2)
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
Calls

9 calls:

TimeVariablePointExpression
39.0ms
kx
@inf
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
15.0ms
th
@-inf
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
6.0ms
ky
@0
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
3.0ms
kx
@0
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
3.0ms
kx
@-inf
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))

simplify377.0ms (3.9%)

Memory
28.3MiB live, 267.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03171402
110111353
238471261
377941261
080971188
Stop Event
iter limit
node limit
Counts
45 → 44
Calls
Call 1
Inputs
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(pow (sin kx) 2)
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
Outputs
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (*.f64 kx (/.f64 kx (sin.f64 ky))) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 ky))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (sin.f64 th) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.f64 (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))))) (fma.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin kx)
(sin.f64 kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (fma.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (*.f64 ky (/.f64 ky (sin.f64 kx))) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky (/.f64 ky (sin.f64 kx)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 kx))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (fma.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal -1/12 binary64) (*.f64 (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal -1/2 binary64))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th))))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (neg.f64 (pow.f64 ky #s(literal 3 binary64))) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (+.f64 (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (-.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (fma.f64 (sin.f64 kx) (fma.f64 #s(literal -1/12 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 #s(literal -1/2 binary64) (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (-.f64 (/.f64 #s(literal -1/5040 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (+.f64 (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx)))) (*.f64 ky ky) (-.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)))) (/.f64 ky (sin.f64 kx)))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 ky ky))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (sin.f64 ky)))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 th th)) (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/120 binary64) (*.f64 th th) #s(literal -1/6 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (sin.f64 ky)))) th)

rewrite238.0ms (2.5%)

Memory
7.9MiB live, 198.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01349
02249
16249
233849
3290249
0828434
Stop Event
iter limit
node limit
iter limit
Counts
6 → 294
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 12 binary64))))) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 8 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (+.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (+.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 12 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 8 binary64)))))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (+.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (pow.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (pow.f64 (pow.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))
(*.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (sqrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1 binary64)))))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (pow.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1/2 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal -1 binary64)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (+.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (-.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (+.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 4 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 18 binary64)) (pow.f64 (sin.f64 kx) #s(literal 18 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) #s(literal 1 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 18 binary64)) (pow.f64 (sin.f64 kx) #s(literal 18 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (+.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 9 binary64)) (pow.f64 (sin.f64 ky) #s(literal 9 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 6 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64)))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (*.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal -1 binary64)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 ky) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(exp.f64 (neg.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(exp.f64 (neg.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))))
(exp.f64 (neg.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 1/4 binary64) (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))
(*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (sin.f64 th) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(pow.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal -1 binary64) (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(neg.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(neg.f64 (*.f64 (sin.f64 th) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(neg.f64 (*.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 ky))) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64))
(*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (*.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal 2 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(neg.f64 (/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(exp.f64 (-.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (log.f64 (sin.f64 ky)))))
(exp.f64 (-.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64)) (neg.f64 (log.f64 (sin.f64 ky)))))
(exp.f64 (-.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (neg.f64 (log.f64 (sin.f64 ky)))))
(exp.f64 (neg.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))
(exp.f64 (+.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (log.f64 (sin.f64 ky))))
(exp.f64 (fma.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64) (log.f64 (sin.f64 ky))))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1/2 binary64) (log.f64 (sin.f64 ky))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1/2 binary64))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 ky)))
(*.f64 #s(literal 1 binary64) (sin.f64 ky))
(*.f64 (sin.f64 ky) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky))))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(neg.f64 (neg.f64 (sin.f64 ky)))
(sin.f64 ky)
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 ky)))
(exp.f64 (neg.f64 (neg.f64 (log.f64 (sin.f64 ky)))))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 ky))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))) #s(literal -1 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 4 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (exp.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64)))))) (exp.f64 (log.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 4 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 2 binary64))) (log.f64 (sin.f64 ky))))
(exp.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)) (sqrt.f64 (sin.f64 kx)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -1 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 4 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (exp.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (exp.f64 (log.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 4 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 2 binary64))) (log.f64 (sin.f64 kx))))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))

eval123.0ms (1.3%)

Memory
-7.9MiB live, 150.7MiB allocated
Compiler

Compiled 9 221 to 1 717 computations (81.4% saved)

prune22.0ms (0.2%)

Memory
21.1MiB live, 59.9MiB allocated
Pruning

22 alts after pruning (22 fresh and 0 done)

PrunedKeptTotal
New34322365
Fresh000
Picked101
Done000
Total34422366
Accuracy
100.0%
Counts
366 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
96.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.6%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
99.5%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
96.0%
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
75.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
94.2%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) #s(literal 2 binary64))))) (sin.f64 th))
44.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
52.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
36.3%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
31.4%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
99.6%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
95.9%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
76.0%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
99.4%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
25.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
28.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
57.1%
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
41.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
32.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 782 to 622 computations (20.5% saved)

simplify8.0ms (0.1%)

Memory
-27.6MiB live, 10.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 ky)
cost-diff0
(*.f64 (sin.f64 ky) th)
cost-diff0
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
cost-diff0
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
cost-diff0
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
cost-diff0
(sin.f64 th)
cost-diff384
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
cost-diff0
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
cost-diff0
(sin.f64 th)
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
cost-diff0
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037277
062267
181267
294267
397267
097267
Stop Event
iter limit
saturated
iter limit
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)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(sin.f64 th)
th
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(*.f64 (sin.f64 ky) th)
(sin.f64 ky)
ky
th
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 2 binary64)
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(sin.f64 th)
th
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 th (sin.f64 ky))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 th (sin.f64 ky)))
(*.f64 (sin.f64 ky) th)
(*.f64 th (sin.f64 ky))
(sin.f64 ky)
ky
th
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 2 binary64)

localize189.0ms (2%)

Memory
-0.1MiB live, 156.2MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.2734375
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy2.5426175136023272
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
accuracy3.4472456499423743
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
accuracy34.80483402657368
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
accuracy0.00390625
(sin.f64 th)
accuracy0.03515625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.11328125
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
accuracy0.19140625
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
accuracy0.16015625
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
accuracy0.21484375
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy3.368806192132544
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy32.371931306722566
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.00390625
(sin.f64 th)
accuracy42.93660357041274
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
accuracy0.00390625
(sin.f64 th)
accuracy0.03515625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.14453125
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.16015625
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Samples
163.0ms256×0valid
Compiler

Compiled 561 to 66 computations (88.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 115.0ms
ival-hypot: 45.0ms (39.1% of total)
ival-sqrt: 30.0ms (26.1% of total)
ival-sin: 17.0ms (14.8% of total)
ival-mult: 9.0ms (7.8% of total)
ival-div: 7.0ms (6.1% of total)
ival-pow2: 4.0ms (3.5% of total)
ival-add: 2.0ms (1.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series34.0ms (0.4%)

Memory
12.3MiB live, 53.6MiB allocated
Counts
18 → 78
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)))
(sin.f64 ky)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(*.f64 (sin.f64 ky) th)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
Outputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(+ 1 (* 1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(/ 1 (sin ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(pow (sin kx) 2)
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (sin kx) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) ky)
(/ (* ky th) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(* ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(/ 1 (sin kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(* th (sin ky))
(pow (sin ky) 2)
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
Calls

9 calls:

TimeVariablePointExpression
9.0ms
ky
@-inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin ky) 2))
4.0ms
ky
@0
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin ky) 2))
3.0ms
kx
@inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin ky) 2))
3.0ms
ky
@inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin ky) 2))
3.0ms
kx
@-inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin ky) 2))

simplify231.0ms (2.4%)

Memory
-43.9MiB live, 226.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04992508
116322453
264922301
087972163
Stop Event
iter limit
node limit
Counts
78 → 76
Calls
Call 1
Inputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(+ 1 (* 1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(/ 1 (sin ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(pow (sin kx) 2)
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (sin kx) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) ky)
(/ (* ky th) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(* ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(/ 1 (sin kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(* th (sin ky))
(pow (sin ky) 2)
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.f64 (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (*.f64 (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 ky)) kx) kx (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 ky))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(+ 1 (* 1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64)))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) th) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 kx kx) th)
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 th (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))) (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 kx kx) th)
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx))
(/ 1 (sin ky))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 ky)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 (fma.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal -1/12 binary64) (*.f64 (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal -1/2 binary64))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (neg.f64 (pow.f64 ky #s(literal 3 binary64))) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (-.f64 (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (+.f64 (fma.f64 (fma.f64 (sin.f64 kx) (fma.f64 #s(literal -1/12 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 #s(literal -1/2 binary64) (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (-.f64 (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/5040 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (-.f64 (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 ky (sin.f64 kx)))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(sin kx)
(sin.f64 kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky (/.f64 ky (sin.f64 kx)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 kx))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))
(/ (sin kx) ky)
(/.f64 (sin.f64 kx) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx)) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/.f64 (fma.f64 (fma.f64 (+.f64 (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.f64 #s(literal 1/12 binary64) (sin.f64 kx))) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 kx))) (*.f64 ky ky) (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)))) (*.f64 ky ky) (sin.f64 kx)) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) ky)
(/.f64 (fma.f64 (fma.f64 (+.f64 (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 kx))) (fma.f64 (+.f64 (fma.f64 (/.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)) #s(literal 1/2 binary64) (fma.f64 #s(literal 31/15120 binary64) (sin.f64 kx) (/.f64 #s(literal 7/720 binary64) (sin.f64 kx)))) (/.f64 (+.f64 (/.f64 #s(literal -1/48 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/36 binary64)) (sin.f64 kx))) (*.f64 ky ky) (/.f64 #s(literal 1/12 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)))) (*.f64 ky ky) (sin.f64 kx)) ky)
(/ (* ky th) (sin kx))
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (/.f64 th (sin.f64 kx)) ky))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 th (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64))) (*.f64 ky ky) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) th) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 kx) (*.f64 (fma.f64 (*.f64 (sin.f64 kx) th) (fma.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal -1/12 binary64) (*.f64 (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal -1/2 binary64))) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky th)
(*.f64 th ky)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(*.f64 th (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(*.f64 (fma.f64 (*.f64 th (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 th (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64))) ky) ky (*.f64 #s(literal -1/6 binary64) th)) (*.f64 th ky))
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 ky ky))
(/ 1 (sin kx))
(/.f64 #s(literal 1 binary64) (sin.f64 kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 kx)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (fma.f64 (*.f64 (sin.f64 kx) (fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 th th)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))))) th)
(* th (+ 1 (* -1/6 (pow th 2))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th)

rewrite94.0ms (1%)

Memory
5.0MiB live, 125.8MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
037200
062175
1187171
21049171
09456171
Stop Event
iter limit
node limit
iter limit
Counts
18 → 441
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)))
(sin.f64 ky)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(*.f64 (sin.f64 ky) th)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
Outputs
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th)))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx)))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) (sqrt.f64 #s(literal -1 binary64))) (*.f64 #s(literal 2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (*.f64 #s(literal 1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(/.f64 (sin.f64 kx) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx)))) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64)) (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64))
(*.f64 (sin.f64 kx) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64))
(/.f64 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(/.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(/.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64))
(/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal 1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64) (log.f64 (sin.f64 kx))))
(exp.f64 (+.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (sin.f64 kx) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sin.f64 kx)))
(sin.f64 kx)
(sin.f64 ky)
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx)))
(exp.f64 (log.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 #s(literal -1 binary64)))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
(exp.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 th)))
(*.f64 #s(literal 1 binary64) (sin.f64 th))
(*.f64 (sin.f64 th) #s(literal 1 binary64))
(/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(/.f64 (sin.f64 th) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sin.f64 th)))
(sin.f64 th)
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 kx))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (sin.f64 th)))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx)))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (sin.f64 kx))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(-.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th)))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx)))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) (sqrt.f64 #s(literal -1 binary64))) (*.f64 #s(literal 2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (*.f64 #s(literal 1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(/.f64 (sin.f64 kx) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx)))) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 kx))) (/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (pow.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (*.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (*.f64 #s(literal -1 binary64) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (*.f64 (sin.f64 kx) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (*.f64 #s(literal 1 binary64) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 (sin.f64 kx) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (neg.f64 (sin.f64 kx))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (neg.f64 (sin.f64 kx))))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 kx)))
(/.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))
(neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(exp.f64 (-.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal 1/2 binary64)) (log.f64 (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal -1 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 th (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (*.f64 th (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 th (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 th (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 th (sin.f64 kx)))
(*.f64 (*.f64 th (sin.f64 kx)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 th (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th)
(*.f64 (sin.f64 kx) (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 th (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 th (sin.f64 kx))))
(/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(*.f64 #s(literal 1 binary64) (*.f64 th (sin.f64 kx)))
(*.f64 (*.f64 th (sin.f64 kx)) #s(literal 1 binary64))
(*.f64 th (sin.f64 kx))
(*.f64 (sin.f64 kx) th)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(*.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(*.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -1/2 binary64))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 4 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 kx ky)) (cos.f64 (+.f64 kx ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky kx)) (cos.f64 (+.f64 ky kx))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(*.f64 (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) #s(literal -1 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(*.f64 (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64))) (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64))))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (*.f64 #s(literal -1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (*.f64 #s(literal -1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 #s(literal 1 binary64) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (neg.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))
(fabs.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(exp.f64 (neg.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal -1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(*.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(*.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -1/2 binary64))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 4 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 kx ky)) (cos.f64 (+.f64 kx ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky kx)) (cos.f64 (+.f64 ky kx))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))

eval116.0ms (1.2%)

Memory
20.9MiB live, 171.7MiB allocated
Compiler

Compiled 16 834 to 2 103 computations (87.5% saved)

prune69.0ms (0.7%)

Memory
-7.1MiB live, 117.4MiB allocated
Pruning

43 alts after pruning (38 fresh and 5 done)

PrunedKeptTotal
New58721608
Fresh01717
Picked055
Done000
Total58743630
Accuracy
100.0%
Counts
630 → 43
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
96.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.6%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
31.3%
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
29.6%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx)) ky)))
28.5%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
99.5%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
4.7%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
96.0%
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
75.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
16.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
94.2%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) #s(literal 2 binary64))))) (sin.f64 th))
44.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
36.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
52.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
28.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
36.3%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
31.4%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
4.7%
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
42.7%
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
99.6%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
95.9%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
76.0%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
99.4%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
25.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
28.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
57.1%
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
5.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
32.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
7.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
6.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
12.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
41.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
10.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))))
20.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
13.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
32.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
13.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
13.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
17.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
Compiler

Compiled 1 961 to 1 414 computations (27.9% saved)

simplify9.0ms (0.1%)

Memory
11.1MiB live, 11.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 ky)
cost-diff0
(sin.f64 th)
cost-diff0
(*.f64 (sin.f64 th) (sin.f64 ky))
cost-diff0
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
cost-diff0
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
cost-diff0
(sin.f64 kx)
cost-diff0
(/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
cost-diff0
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
cost-diff0
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
cost-diff0
(pow.f64 th #s(literal 3 binary64))
cost-diff0
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
cost-diff0
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
cost-diff0
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
cost-diff0
(sin.f64 th)
cost-diff0
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
cost-diff0
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040306
068301
189301
2103301
3117301
4121301
5127301
6127301
7149301
8149301
0149301
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
th
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(pow.f64 th #s(literal 3 binary64))
th
#s(literal 3 binary64)
#s(literal -1/6 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 kx kx)
kx
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 kx)
kx
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
ky
(sin.f64 th)
th
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
Outputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 th)
th
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
#s(approx (sin th) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)
(pow.f64 th #s(literal 3 binary64))
th
#s(literal 3 binary64)
#s(literal -1/6 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 kx kx)
kx
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 kx)
kx
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
ky
(sin.f64 th)
th
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx

localize201.0ms (2.1%)

Memory
1.9MiB live, 204.6MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(sin.f64 th)
accuracy0.03515625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.21875
(*.f64 (sin.f64 th) (sin.f64 ky))
accuracy2.499648763602325
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.170253759768442
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
accuracy0.21484375
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy3.368806192132544
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy32.371931306722566
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.16015625
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
accuracy3.368806192132544
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy30.852296525039602
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
accuracy32.371931306722566
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0
(pow.f64 th #s(literal 3 binary64))
accuracy0.07421875
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
accuracy35.0487380731886
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
accuracy42.93660357041274
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
accuracy0.00390625
(sin.f64 th)
accuracy0.03515625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.25390625
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
accuracy0.27572250976844204
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Samples
144.0ms256×0valid
Compiler

Compiled 573 to 70 computations (87.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 124.0ms
ival-sin: 45.0ms (36.2% of total)
ival-pow2: 34.0ms (27.3% of total)
ival-mult: 24.0ms (19.3% of total)
ival-div: 6.0ms (4.8% of total)
ival-hypot: 4.0ms (3.2% of total)
const: 4.0ms (3.2% of total)
ival-pow: 3.0ms (2.4% of total)
ival-add: 2.0ms (1.6% of total)
ival-sqrt: 2.0ms (1.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series59.0ms (0.6%)

Memory
-28.3MiB live, 89.1MiB allocated
Counts
21 → 99
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(pow.f64 th #s(literal 3 binary64))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 kx)
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(/ (* kx (sin th)) (sin ky))
(* kx (+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* -1/6 (/ (sin th) (sin ky))))) (/ (sin th) (sin ky))))
(* kx (+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (+ (* -1/6 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* 1/120 (/ (sin th) (sin ky))) (+ (* 1/12 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))) (/ (sin th) (sin ky))))
(* kx (+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (+ (* -1/6 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* 1/120 (/ (sin th) (sin ky))) (+ (* 1/12 (/ (sin th) (pow (sin ky) 3))) (+ (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (+ (* -1/12 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin ky) 3))) (* -1/5040 (/ (sin th) (sin ky)))))))))))))) (/ (sin th) (sin ky))))
(/ kx (sin ky))
(* kx (+ (* -1 (* (pow kx 2) (+ (* 1/6 (/ 1 (sin ky))) (* 1/2 (/ 1 (pow (sin ky) 3)))))) (/ 1 (sin ky))))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/120 (/ 1 (sin ky))) (+ (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/12 (/ 1 (pow (sin ky) 3)))))) (+ (* 1/6 (/ 1 (sin ky))) (* 1/2 (/ 1 (pow (sin ky) 3)))))) (/ 1 (sin ky))))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/120 (/ 1 (sin ky))) (+ (* 1/12 (/ 1 (pow (sin ky) 3))) (+ (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* (pow kx 2) (- (+ (* -1/2 (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))) (* -1/12 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (+ (* 1/5040 (/ 1 (sin ky))) (* 1/240 (/ 1 (pow (sin ky) 3)))))))))) (+ (* 1/6 (/ 1 (sin ky))) (* 1/2 (/ 1 (pow (sin ky) 3)))))) (/ 1 (sin ky))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (* (sin kx) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sin kx)
(pow (sin kx) 2)
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ (sin th) (sin kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (sin th) (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 2))))
(+ (sin th) (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 2))) (* 1/2 (* (pow ky 2) (* (pow (sin kx) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))))
(+ (sin th) (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 2))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (pow (sin kx) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (pow (sin kx) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))
(+ 1 (* -1/2 (/ (pow ky 2) (pow (sin kx) 2))))
(+ 1 (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (pow (sin kx) 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 2))))))
(+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (pow (sin kx) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (* 1/2 (* (pow (sin kx) 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 2))))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* (sin ky) (sin th))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(pow th 3)
(* (* th (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Calls

9 calls:

TimeVariablePointExpression
20.0ms
kx
@0
((* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (pow (sin ky) 2) (pow (sin kx) 2) (pow (sin kx) 2))
13.0ms
th
@-inf
((* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (pow (sin ky) 2) (pow (sin kx) 2) (pow (sin kx) 2))
5.0ms
ky
@inf
((* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (pow (sin ky) 2) (pow (sin kx) 2) (pow (sin kx) 2))
3.0ms
kx
@inf
((* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (pow (sin ky) 2) (pow (sin kx) 2) (pow (sin kx) 2))
3.0ms
th
@inf
((* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (pow (sin ky) 2) (pow (sin kx) 2) (pow (sin kx) 2))

simplify222.0ms (2.3%)

Memory
25.0MiB live, 290.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05813222
119493052
274823006
080462833
Stop Event
iter limit
node limit
Counts
99 → 96
Calls
Call 1
Inputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(/ (* kx (sin th)) (sin ky))
(* kx (+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* -1/6 (/ (sin th) (sin ky))))) (/ (sin th) (sin ky))))
(* kx (+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (+ (* -1/6 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* 1/120 (/ (sin th) (sin ky))) (+ (* 1/12 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))) (/ (sin th) (sin ky))))
(* kx (+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (+ (* -1/6 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* 1/120 (/ (sin th) (sin ky))) (+ (* 1/12 (/ (sin th) (pow (sin ky) 3))) (+ (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (+ (* -1/12 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin ky) 3))) (* -1/5040 (/ (sin th) (sin ky)))))))))))))) (/ (sin th) (sin ky))))
(/ kx (sin ky))
(* kx (+ (* -1 (* (pow kx 2) (+ (* 1/6 (/ 1 (sin ky))) (* 1/2 (/ 1 (pow (sin ky) 3)))))) (/ 1 (sin ky))))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/120 (/ 1 (sin ky))) (+ (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/12 (/ 1 (pow (sin ky) 3)))))) (+ (* 1/6 (/ 1 (sin ky))) (* 1/2 (/ 1 (pow (sin ky) 3)))))) (/ 1 (sin ky))))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/120 (/ 1 (sin ky))) (+ (* 1/12 (/ 1 (pow (sin ky) 3))) (+ (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* (pow kx 2) (- (+ (* -1/2 (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))) (* -1/12 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (+ (* 1/5040 (/ 1 (sin ky))) (* 1/240 (/ 1 (pow (sin ky) 3)))))))))) (+ (* 1/6 (/ 1 (sin ky))) (* 1/2 (/ 1 (pow (sin ky) 3)))))) (/ 1 (sin ky))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (* (sin kx) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sin kx)
(pow (sin kx) 2)
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ (sin th) (sin kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (sin th) (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 2))))
(+ (sin th) (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 2))) (* 1/2 (* (pow ky 2) (* (pow (sin kx) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))))
(+ (sin th) (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 2))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (pow (sin kx) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (pow (sin kx) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))
(+ 1 (* -1/2 (/ (pow ky 2) (pow (sin kx) 2))))
(+ 1 (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (pow (sin kx) 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 2))))))
(+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (pow (sin kx) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (* 1/2 (* (pow (sin kx) 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 2))))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* (sin ky) (sin th))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(pow th 3)
(* (* th (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)))) (*.f64 kx kx) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
(/ (sin th) (sin ky))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 ky)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 ky)) (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 ky)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)))) (*.f64 kx kx) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (sin.f64 ky))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(/ (* kx (sin th)) (sin ky))
(*.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky)))
(* kx (+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* -1/6 (/ (sin th) (sin ky))))) (/ (sin th) (sin ky))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))))
(* kx (+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (+ (* -1/6 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* 1/120 (/ (sin th) (sin ky))) (+ (* 1/12 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))) (/ (sin th) (sin ky))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 (sin.f64 th) (/.f64 #s(literal 1/120 binary64) (sin.f64 ky)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 ky)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) #s(literal 1/12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))))) (*.f64 kx kx) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))))) (*.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))))
(* kx (+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (+ (* -1/6 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* 1/120 (/ (sin th) (sin ky))) (+ (* 1/12 (/ (sin th) (pow (sin ky) 3))) (+ (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (+ (* -1/12 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin ky) 3))) (* -1/5040 (/ (sin th) (sin ky)))))))))))))) (/ (sin th) (sin ky))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (/.f64 (sin.f64 th) (sin.f64 ky)) (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 ky)) (sin.f64 th)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 ky)) (sin.f64 th)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (fma.f64 #s(literal -1/5040 binary64) (/.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/240 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))))) (*.f64 kx kx) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 ky)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) #s(literal 1/12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))))) (*.f64 kx kx) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky))) kx)
(/ kx (sin ky))
(/.f64 kx (sin.f64 ky))
(* kx (+ (* -1 (* (pow kx 2) (+ (* 1/6 (/ 1 (sin ky))) (* 1/2 (/ 1 (pow (sin ky) 3)))))) (/ 1 (sin ky))))
(fma.f64 (*.f64 kx (*.f64 (neg.f64 kx) kx)) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 ky))) (/.f64 kx (sin.f64 ky)))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/120 (/ 1 (sin ky))) (+ (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/12 (/ 1 (pow (sin ky) 3)))))) (+ (* 1/6 (/ 1 (sin ky))) (* 1/2 (/ 1 (pow (sin ky) 3)))))) (/ 1 (sin ky))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 ky)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 ky))) (*.f64 kx kx)) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 ky)))) (/.f64 kx (sin.f64 ky)))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/120 (/ 1 (sin ky))) (+ (* 1/12 (/ 1 (pow (sin ky) 3))) (+ (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* (pow kx 2) (- (+ (* -1/2 (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))) (* -1/12 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (+ (* 1/5040 (/ 1 (sin ky))) (* 1/240 (/ 1 (pow (sin ky) 3)))))))))) (+ (* 1/6 (/ 1 (sin ky))) (* 1/2 (/ 1 (pow (sin ky) 3)))))) (/ 1 (sin ky))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (-.f64 (*.f64 (+.f64 (fma.f64 (-.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 ky)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 ky)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))) (+.f64 (/.f64 #s(literal 1/240 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (/.f64 #s(literal 1/5040 binary64) (sin.f64 ky)))) (*.f64 kx kx) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 ky)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 ky))) (*.f64 kx kx)) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 ky)))) (/.f64 kx (sin.f64 ky)))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(* (* (sin kx) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 kx))
(sin kx)
(sin.f64 kx)
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (sin.f64 th) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) #s(literal 1/12 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (sin.f64 th)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/5040 binary64) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/240 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) #s(literal 1/12 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(/ (sin th) (sin kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 kx)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 kx)) (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)))) (*.f64 ky ky) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 ky (/.f64 ky (sin.f64 kx)))) #s(literal 1/2 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (sin.f64 kx))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (neg.f64 ky) (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (*.f64 ky ky)) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (*.f64 (+.f64 (fma.f64 (-.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))) (+.f64 (/.f64 #s(literal 1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/5040 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)))) (/.f64 ky (sin.f64 kx)))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(+ (sin th) (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 2))))
(fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 2))) (* 1/2 (* (pow ky 2) (* (pow (sin kx) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky ky) (sin.f64 th))
(+ (sin th) (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 2))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (pow (sin kx) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (pow (sin kx) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 ky ky) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky ky) (sin.f64 th))
(+ 1 (* -1/2 (/ (pow ky 2) (pow (sin kx) 2))))
(fma.f64 (*.f64 ky (/.f64 ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (pow (sin kx) 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky ky) #s(literal 1 binary64))
(+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (pow (sin kx) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (* 1/2 (* (pow (sin kx) 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 2))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky ky) #s(literal 1 binary64))
(* ky (sin th))
(*.f64 (sin.f64 th) ky)
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 (sin.f64 th) ky))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th) (*.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) ky)
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 ky ky))
(* (sin ky) (sin th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)))) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))))) th)
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)
th
(* th (+ 1 (* -1/6 (pow th 2))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th)
(pow th 3)
(pow.f64 th #s(literal 3 binary64))
(* (* th (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 kx) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 kx) th) th) (sin.f64 kx))) th)
(* th (+ (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 (sin.f64 kx) th) th) (*.f64 #s(literal -1/6 binary64) (sin.f64 kx)))) (pow.f64 th #s(literal 3 binary64)) (*.f64 (*.f64 (sin.f64 kx) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(* th (+ (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin kx)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin kx) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 kx) th) th) (sin.f64 kx)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 kx) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (sin.f64 kx) th) th)))))) th)
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(fma.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (pow.f64 th #s(literal 3 binary64)) (*.f64 (sin.f64 ky) th))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)
(* -1/6 (pow th 3))
(*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64)))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(*.f64 (neg.f64 (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 th th)))) (pow.f64 th #s(literal 3 binary64)))

rewrite189.0ms (2%)

Memory
-7.2MiB live, 281.4MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040224
068219
1226219
21347219
08664219
Stop Event
iter limit
node limit
iter limit
Counts
21 → 507
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(pow.f64 th #s(literal 3 binary64))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 kx)
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 #s(literal -2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.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 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -2 binary64)))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal -2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -1 binary64)) (*.f64 #s(literal -2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))))
(/.f64 #s(literal -1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))))
(/.f64 #s(literal 1 binary64) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 ky) (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)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(-.f64 (/.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 th)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
(sin.f64 th)
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))
#s(approx (sin th) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))
(*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))
(*.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (pow.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))) #s(literal -1 binary64)))
(pow.f64 (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))) (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (fma.f64 (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (*.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))))
(/.f64 (neg.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))))) (neg.f64 (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) #s(literal 4 binary64)) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) #s(literal 6 binary64)) (pow.f64 th #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) #s(literal 4 binary64)) (+.f64 (pow.f64 th #s(literal 4 binary64)) (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 2 binary64)))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) #s(literal 6 binary64)) (pow.f64 th #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64))) (pow.f64 th #s(literal 3 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(/.f64 (*.f64 (fma.f64 #s(literal -1/10077696 binary64) (pow.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal 3 binary64)) (pow.f64 th #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (pow.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 3 binary64)) #s(literal 1/46656 binary64) (-.f64 (pow.f64 th #s(literal 6 binary64)) (*.f64 #s(literal -1/216 binary64) (pow.f64 (pow.f64 th #s(literal 4 binary64)) #s(literal 3 binary64))))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (*.f64 th th))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(/.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))) (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))) (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3/2 binary64))) (pow.f64 th #s(literal 3/2 binary64)) th)
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) (*.f64 th th) th)
(fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)
(fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 th (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th)
(-.f64 (/.f64 (*.f64 th th) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))
(-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)
(+.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))
(*.f64 (pow.f64 th #s(literal 3/2 binary64)) (pow.f64 th #s(literal 3/2 binary64)))
(*.f64 (*.f64 th th) th)
(*.f64 th (*.f64 th th))
(pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th))
(pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 th th) #s(literal 3/2 binary64))
(pow.f64 th #s(literal 3 binary64))
(exp.f64 (fma.f64 (log.f64 th) #s(literal 3/2 binary64) (*.f64 (log.f64 th) #s(literal 3/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 th) #s(literal 3/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 th #s(literal 3/2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 th th)) #s(literal 3/2 binary64)))
(exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64)))
(*.f64 (/.f64 #s(literal -2 binary64) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 ky) (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 th)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(pow.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -1 binary64)) (*.f64 #s(literal -2 binary64) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th)))))
(/.f64 #s(literal -1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
(-.f64 (/.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64)))
(*.f64 (sin.f64 ky) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(pow.f64 (/.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(sin.f64 ky)
(exp.f64 (log.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (pow.f64 (pow.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64))) (sqrt.f64 (pow.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64))) (pow.f64 (pow.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))) (neg.f64 (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (*.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64))) (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))) (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64))))))
(sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(exp.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (sin.f64 th)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 kx) (sin.f64 th))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 kx) (sin.f64 th)))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 kx th)) (cos.f64 (+.f64 kx th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 kx th)) (cos.f64 (+.f64 kx th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 kx th)) (cos.f64 (+.f64 kx th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 kx) (sin.f64 th))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 kx) (sin.f64 th)))))
(/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (sin.f64 kx))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64)))
(*.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(pow.f64 (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))))
(/.f64 (*.f64 (sin.f64 kx) #s(literal 1 binary64)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(neg.f64 (/.f64 (sin.f64 kx) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))) (/.f64 (sin.f64 kx) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(sin.f64 kx)
(exp.f64 (log.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3 binary64))))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 #s(literal -2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.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 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -2 binary64)))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal -2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -1 binary64)) (*.f64 #s(literal -2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))))
(/.f64 #s(literal -1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))))
(/.f64 #s(literal 1 binary64) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 ky) (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)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(-.f64 (/.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 ky) (sin.f64 th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (fma.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) #s(literal -2 binary64))
(/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cos.f64 (+.f64 ky th)))) #s(literal 4 binary64))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 2 binary64))
(-.f64 (/.f64 (cos.f64 (-.f64 ky th)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -1 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 4 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))

eval87.0ms (0.9%)

Memory
24.5MiB live, 213.2MiB allocated
Compiler

Compiled 19 393 to 2 294 computations (88.2% saved)

prune73.0ms (0.8%)

Memory
-0.2MiB live, 204.8MiB allocated
Pruning

64 alts after pruning (58 fresh and 6 done)

PrunedKeptTotal
New61137648
Fresh122133
Picked325
Done145
Total62764691
Accuracy
100.0%
Counts
691 → 64
Alt Table
Click to see full alt table
StatusAccuracyProgram
9.7%
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
96.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
75.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
35.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
26.7%
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
99.6%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
29.6%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx)) ky)))
28.5%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
99.5%
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
45.3%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
45.5%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
41.9%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.5%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
4.7%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
26.6%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
9.7%
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
26.7%
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
75.5%
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 ky))
36.2%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
32.9%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
28.1%
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
75.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
16.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
36.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
52.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
28.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
26.9%
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))) (sin.f64 th))
31.4%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
4.5%
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
26.3%
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
3.3%
(*.f64 (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
99.4%
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) (sin.f64 ky))
28.1%
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
99.6%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
95.9%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
28.1%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
99.4%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
31.4%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
25.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
28.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
4.9%
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
32.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
7.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
41.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
10.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))))
20.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
13.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
32.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
13.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
13.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
17.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
14.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
14.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
14.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))))
8.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
8.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
Compiler

Compiled 3 254 to 2 338 computations (28.1% saved)

simplify135.0ms (1.4%)

Memory
6.9MiB live, 46.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
cost-diff0
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
cost-diff0
(sin.f64 th)
cost-diff0
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
cost-diff0
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
cost-diff0
(sin.f64 ky)
cost-diff0
(*.f64 (sin.f64 ky) th)
cost-diff0
(*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
cost-diff0
(*.f64 th th)
cost-diff0
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
cost-diff0
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
cost-diff0
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
cost-diff0
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
cost-diff0
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
cost-diff448
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051327
080314
1119312
2183305
3288305
4682305
51342305
61993305
72551305
82776305
93200305
103545305
113620305
123627305
133628305
143628305
153644305
163646305
173646305
183652305
03652302
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(literal -1 binary64)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
(neg.f64 (sin.f64 ky))
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
#s(literal -1/6 binary64)
(*.f64 th th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(*.f64 (sin.f64 ky) th)
(sin.f64 ky)
ky
th
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(sin.f64 th)
th
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(sin.f64 ky)
ky
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 kx kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 2 binary64)
(sin.f64 th)
th
Outputs
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(literal -1 binary64)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
(neg.f64 (sin.f64 ky))
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
#s(literal -1/6 binary64)
(*.f64 th th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
(*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))
(*.f64 (sin.f64 ky) th)
(*.f64 th (sin.f64 ky))
(sin.f64 ky)
ky
th
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(sin.f64 th)
th
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(sin.f64 ky)
ky
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 kx kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 2 binary64)
(sin.f64 th)
th

localize168.0ms (1.7%)

Memory
-40.6MiB live, 205.8MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.16015625
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
accuracy0.2734375
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy3.368806192132544
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
accuracy30.852296525039602
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
accuracy0.00390625
(sin.f64 th)
accuracy0.25390625
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
accuracy0.27572250976844204
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
accuracy43.17327445788024
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
accuracy0.140625
(*.f64 (sin.f64 ky) th)
accuracy2.5426175136023272
(*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
accuracy34.80483402657368
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
accuracy43.170212047265075
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
accuracy0.0625
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
accuracy0.17578125
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
accuracy35.0487380731886
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
accuracy42.93660357041274
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
accuracy0.03515625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.15234375
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.16015625
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
accuracy0.30306625976844204
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
Samples
109.0ms256×0valid
Compiler

Compiled 643 to 90 computations (86% saved)

Precisions
Click to see histograms. Total time spent on operations: 67.0ms
ival-mult: 20.0ms (29.9% of total)
ival-sin: 19.0ms (28.4% of total)
ival-div: 8.0ms (12% of total)
ival-hypot: 4.0ms (6% of total)
const: 4.0ms (6% of total)
ival-pow2: 4.0ms (6% of total)
ival-add: 3.0ms (4.5% of total)
ival-sqrt: 3.0ms (4.5% of total)
ival-neg: 1.0ms (1.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series31.0ms (0.3%)

Memory
18.0MiB live, 60.8MiB allocated
Counts
23 → 97
Calls
Call 1
Inputs
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 th th)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(*.f64 (sin.f64 ky) th)
(sin.f64 ky)
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(sin.f64 th)
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
Outputs
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ -1 (sin ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(/ 1 (sin ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(pow (sin kx) 2)
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ -1 (sin kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (* ky th) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(* ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(/ (sin th) (sin kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(/ 1 (sin kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* th (sin ky))
(pow (sin ky) 2)
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(* -1/6 (pow th 2))
(pow th 2)
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Calls

9 calls:

TimeVariablePointExpression
7.0ms
th
@0
((* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (neg (sin ky))) (* (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (neg (sin ky))) (sin th)) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* -1/6 (* th th)) (* th th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sin ky) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (* (* -1/6 (* th th)) th) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin kx) 2) (pow (sin ky) 2))
3.0ms
th
@-inf
((* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (neg (sin ky))) (* (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (neg (sin ky))) (sin th)) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* -1/6 (* th th)) (* th th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sin ky) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (* (* -1/6 (* th th)) th) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin kx) 2) (pow (sin ky) 2))
3.0ms
th
@inf
((* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (neg (sin ky))) (* (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (neg (sin ky))) (sin th)) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* -1/6 (* th th)) (* th th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sin ky) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (* (* -1/6 (* th th)) th) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin kx) 2) (pow (sin ky) 2))
3.0ms
kx
@inf
((* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (neg (sin ky))) (* (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (neg (sin ky))) (sin th)) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* -1/6 (* th th)) (* th th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sin ky) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (* (* -1/6 (* th th)) th) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin kx) 2) (pow (sin ky) 2))
3.0ms
ky
@-inf
((* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (neg (sin ky))) (* (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (neg (sin ky))) (sin th)) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* -1/6 (* th th)) (* th th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sin ky) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (* (* -1/6 (* th th)) th) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin kx) 2) (pow (sin ky) 2))

simplify213.0ms (2.2%)

Memory
8.0MiB live, 238.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05413085
117772982
270762855
084022694
Stop Event
iter limit
node limit
Counts
97 → 95
Calls
Call 1
Inputs
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ -1 (sin ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(/ 1 (sin ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(pow (sin kx) 2)
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ -1 (sin kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (* ky th) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(* ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(/ (sin th) (sin kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(/ 1 (sin kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* th (sin ky))
(pow (sin ky) 2)
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(* -1/6 (pow th 2))
(pow th 2)
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th))))) (sin.f64 th)))
(/ -1 (sin ky))
(/.f64 #s(literal -1 binary64) (sin.f64 ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 ky)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (/.f64 #s(literal -1 binary64) (sin.f64 ky))))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (sin.f64 ky))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) th) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 kx kx) th)
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 th (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))))) (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 kx kx) th)
(/ (sin th) (sin ky))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 ky)) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(fma.f64 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th))))) (/.f64 (sin.f64 th) (sin.f64 ky))))
(/ 1 (sin ky))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 ky)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (neg.f64 (pow.f64 ky #s(literal 3 binary64))) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (-.f64 (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (+.f64 (fma.f64 (fma.f64 (sin.f64 kx) (fma.f64 #s(literal -1/2 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (*.f64 #s(literal -1/12 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))) (-.f64 (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/5040 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (-.f64 (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 ky (sin.f64 kx)))
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 (fma.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (fma.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal -1/12 binary64))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(/ -1 (sin kx))
(/.f64 #s(literal -1 binary64) (sin.f64 kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(sin kx)
(sin.f64 kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 ky (/.f64 ky (sin.f64 kx)))) #s(literal 1/2 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (sin.f64 kx))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))
(/ (* ky th) (sin kx))
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (/.f64 th (sin.f64 kx)) ky))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 th (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64))) (*.f64 ky ky) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) th) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 kx) (*.f64 (fma.f64 (*.f64 th (sin.f64 kx)) (fma.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal -1/12 binary64))) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky th)
(*.f64 th ky)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(*.f64 th (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(*.f64 (fma.f64 (*.f64 th (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 th (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64))) (*.f64 ky ky) (*.f64 #s(literal -1/6 binary64) th)) (*.f64 th ky))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(/ (sin th) (sin kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 kx)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(/ 1 (sin kx))
(/.f64 #s(literal 1 binary64) (sin.f64 kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 kx)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (fma.f64 (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (*.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 ky ky))
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))))) th)
(* th (+ 1 (* -1/6 (pow th 2))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th)
(* -1/6 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(pow th 2)
(*.f64 th th)
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (+.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 th th) (*.f64 (*.f64 th th) #s(literal 1/120 binary64))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)
(* -1/6 (pow th 3))
(*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64)))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(*.f64 (neg.f64 (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 th th)))) (pow.f64 th #s(literal 3 binary64)))

rewrite159.0ms (1.6%)

Memory
10.9MiB live, 167.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051277
080249
1244240
21351240
09353237
Stop Event
iter limit
node limit
iter limit
Counts
23 → 395
Calls
Call 1
Inputs
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 th th)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(*.f64 (sin.f64 ky) th)
(sin.f64 ky)
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(sin.f64 th)
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
Outputs
(*.f64 (*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 kx))) (*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal -1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (sin.f64 kx))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))) (+.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))))
(neg.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (sin.f64 kx))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal 1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64) (log.f64 (sin.f64 kx))))
(exp.f64 (+.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))) #s(literal -1 binary64)))
(+.f64 #s(literal 0 binary64) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (neg.f64 (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th)))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (*.f64 (sin.f64 th) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th)))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(neg.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))))
(neg.f64 (*.f64 (sin.f64 th) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(neg.f64 (*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th)))
(-.f64 #s(literal 0 binary64) (*.f64 (sin.f64 th) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 #s(literal -1 binary64)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
(exp.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(*.f64 (*.f64 #s(literal -1/6 binary64) th) th)
(*.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 th (*.f64 #s(literal -1/6 binary64) th))
(*.f64 (exp.f64 (log.f64 th)) (exp.f64 (log.f64 th)))
(*.f64 th th)
(pow.f64 (exp.f64 (log.f64 th)) #s(literal 2 binary64))
(pow.f64 (*.f64 th th) #s(literal 1 binary64))
(pow.f64 th #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (*.f64 th (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th)
(*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) th) (sin.f64 kx))
(*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (*.f64 th (sin.f64 kx)))
(*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 th (*.f64 (sin.f64 kx) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (sin.f64 kx) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) th))
(/.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) th) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 th (sin.f64 kx))
(*.f64 (sin.f64 kx) th)
(/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))
(*.f64 #s(literal 1 binary64) (sin.f64 kx))
(*.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))
(*.f64 (sin.f64 kx) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 kx)))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))))
(/.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (neg.f64 (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(neg.f64 (neg.f64 (sin.f64 kx)))
(sin.f64 kx)
(sin.f64 ky)
(-.f64 #s(literal 0 binary64) (/.f64 (sin.f64 kx) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx)))
(exp.f64 (neg.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal -1 binary64))))
(exp.f64 (log.f64 (sin.f64 kx)))
(+.f64 #s(literal 0 binary64) (sin.f64 kx))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 kx))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 kx)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (sin.f64 th) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx)))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(pow.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th)))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (pow.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (sin.f64 th) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(pow.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (sin.f64 th))
(*.f64 (sin.f64 th) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 th)))
(neg.f64 (neg.f64 (sin.f64 th)))
(sin.f64 th)
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 th)))
(*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))
(/.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)))
(neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (sin.f64 kx))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (sin.f64 th))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 th)))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 kx))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))) (+.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (*.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (*.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (sin.f64 kx))) (*.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 kx))) #s(literal -1 binary64)))
(+.f64 #s(literal 0 binary64) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(-.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))
(*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(*.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (fma.f64 th th (*.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 th th (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(*.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (pow.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (fma.f64 th th (*.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(*.f64 th (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))) (*.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))))) (+.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (fma.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (*.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))))
(/.f64 (neg.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64))))) (neg.f64 (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (fma.f64 th th (*.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (*.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (*.f64 th th))) (*.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))))
(/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) (neg.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 th th (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (fma.f64 th th (*.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))
(/.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (fma.f64 th th (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))
(/.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (fma.f64 th th (*.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))) (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 th th (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))))
(fma.f64 (pow.f64 th #s(literal 1/2 binary64)) (pow.f64 th #s(literal 1/2 binary64)) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) (*.f64 th th) th)
(fma.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (pow.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th th)
(fma.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) th) th)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)
(fma.f64 th (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th)
(-.f64 (/.f64 (*.f64 th th) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))))
(+.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (neg.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)) th)
(+.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(*.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(*.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -1/2 binary64))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 4 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky kx)) (cos.f64 (+.f64 ky kx))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 kx ky)) (cos.f64 (+.f64 kx ky))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (+.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64)))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))

eval206.0ms (2.1%)

Memory
1.3MiB live, 205.9MiB allocated
Compiler

Compiled 21 561 to 2 629 computations (87.8% saved)

prune284.0ms (2.9%)

Memory
-14.3MiB live, 189.4MiB allocated
Pruning

83 alts after pruning (72 fresh and 11 done)

PrunedKeptTotal
New66827695
Fresh84553
Picked055
Done066
Total67683759
Accuracy
100.0%
Counts
759 → 83
Alt Table
Click to see full alt table
StatusAccuracyProgram
9.7%
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
96.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
75.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
35.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
8.9%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
24.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
26.7%
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
99.6%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
29.6%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx)) ky)))
28.5%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
99.5%
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
32.9%
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
45.3%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
45.5%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
41.9%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.5%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
32.8%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
4.7%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
26.6%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
9.7%
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
26.7%
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
75.5%
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 ky))
36.2%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
29.2%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
32.9%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
6.4%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 kx))
31.4%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
28.1%
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
75.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
16.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
36.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
52.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
18.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
28.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
26.9%
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))) (sin.f64 th))
31.4%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
4.5%
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
8.6%
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
26.3%
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
3.3%
(*.f64 (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
99.4%
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) (sin.f64 ky))
31.4%
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
28.1%
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
99.6%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
32.8%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
31.4%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
24.3%
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
31.4%
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
28.1%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
99.4%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
25.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
28.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
4.9%
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
32.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
7.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
4.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
41.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
10.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))))
20.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
13.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
14.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
14.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
4.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
4.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 kx))) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
17.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
9.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
14.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
32.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
13.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
13.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
17.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
14.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
17.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
14.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
8.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
8.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
Compiler

Compiled 5 134 to 2 065 computations (59.8% saved)

regimes347.0ms (3.6%)

Memory
13.1MiB live, 491.8MiB allocated
Counts
108 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 kx))) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx)) ky)))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) #s(literal 2 binary64))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Calls

9 calls:

57.0ms
(sin.f64 th)
55.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
39.0ms
(sin.f64 kx)
36.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
32.0ms
kx
Results
AccuracySegmentsBranch
99.7%1kx
99.7%1ky
99.7%1th
99.7%1(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
99.7%1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
99.7%1(sin.f64 ky)
99.7%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.7%1(sin.f64 kx)
99.7%1(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes331.0ms (3.4%)

Memory
-15.4MiB live, 503.1MiB allocated
Counts
91 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 kx))) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx)) ky)))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
Calls

9 calls:

53.0ms
(sin.f64 ky)
50.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
47.0ms
ky
40.0ms
kx
30.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Results
AccuracySegmentsBranch
93.9%2kx
95.3%2ky
83.1%2th
81.7%4(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
96.9%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
95.3%3(sin.f64 ky)
93.9%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
93.9%3(sin.f64 kx)
83.1%3(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes234.0ms (2.4%)

Memory
-1.6MiB live, 470.6MiB allocated
Counts
88 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 kx))) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx)) ky)))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
Calls

8 calls:

35.0ms
(sin.f64 th)
29.0ms
th
29.0ms
(sin.f64 kx)
28.0ms
(sin.f64 ky)
28.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
69.9%3(sin.f64 th)
69.2%3th
72.4%4(sin.f64 kx)
72.6%3(sin.f64 ky)
83.8%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
68.9%2kx
71.8%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
70.4%2ky
Compiler

Compiled 26 to 38 computations (-46.2% saved)

regimes52.0ms (0.5%)

Memory
13.4MiB live, 51.8MiB allocated
Counts
80 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 kx))) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

48.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
83.5%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes57.0ms (0.6%)

Memory
-4.6MiB live, 119.5MiB allocated
Counts
77 → 4
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 kx))) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

2 calls:

30.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
23.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Results
AccuracySegmentsBranch
59.9%4(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
77.2%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 29 to 24 computations (17.2% saved)

regimes25.0ms (0.3%)

Memory
17.9MiB live, 54.4MiB allocated
Counts
73 → 4
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 kx))) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

22.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
77.0%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes160.0ms (1.7%)

Memory
0.2MiB live, 280.0MiB allocated
Counts
67 → 4
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

8 calls:

21.0ms
(sin.f64 ky)
20.0ms
(sin.f64 th)
20.0ms
(sin.f64 kx)
19.0ms
ky
19.0ms
th
Results
AccuracySegmentsBranch
60.8%3th
63.0%4(sin.f64 th)
56.5%4kx
59.4%5(sin.f64 kx)
58.8%4(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
64.7%3ky
67.9%4(sin.f64 ky)
69.9%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 26 to 38 computations (-46.2% saved)

regimes102.0ms (1.1%)

Memory
-27.3MiB live, 168.5MiB allocated
Counts
66 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
Outputs
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

5 calls:

20.0ms
(sin.f64 ky)
20.0ms
ky
20.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
19.0ms
(sin.f64 th)
18.0ms
th
Results
AccuracySegmentsBranch
39.1%2th
42.7%3(sin.f64 th)
58.2%3ky
59.6%3(sin.f64 ky)
56.4%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 19 to 25 computations (-31.6% saved)

regimes111.0ms (1.2%)

Memory
-0.1MiB live, 87.4MiB allocated
Counts
62 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
Outputs
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

4 calls:

42.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
30.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
17.0ms
ky
17.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
56.4%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
50.2%3ky
46.9%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
51.6%3(sin.f64 ky)
Compiler

Compiled 32 to 31 computations (3.1% saved)

regimes28.0ms (0.3%)

Memory
1.6MiB live, 37.4MiB allocated
Counts
40 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 kx) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 th th (*.f64 #s(literal -1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 th (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) th))
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

2 calls:

15.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
11.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
45.5%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
54.8%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 17 to 17 computations (0% saved)

regimes50.0ms (0.5%)

Memory
2.1MiB live, 73.1MiB allocated
Counts
18 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 th ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))) th th)))
(*.f64 #s(approx (/ (sin kx) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 kx (sin.f64 ky))) (sin.f64 th))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

7 calls:

10.0ms
(sin.f64 ky)
6.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
6.0ms
(sin.f64 kx)
6.0ms
ky
6.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
38.6%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
37.6%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
37.1%2ky
37.1%2(sin.f64 ky)
36.9%2kx
37.7%2(sin.f64 kx)
41.3%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 39 to 44 computations (-12.8% saved)

regimes10.0ms (0.1%)

Memory
22.7MiB live, 22.7MiB allocated
Counts
7 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

3 calls:

3.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
3.0ms
(sin.f64 th)
3.0ms
th
Results
AccuracySegmentsBranch
35.3%2th
32.9%1(sin.f64 th)
37.7%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 16 to 18 computations (-12.5% saved)

regimes27.0ms (0.3%)

Memory
-11.7MiB live, 39.2MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

9 calls:

6.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
3.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
2.0ms
(sin.f64 th)
2.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
2.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
32.9%1(sin.f64 th)
32.9%1th
32.9%1kx
32.9%1(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
32.9%1ky
32.9%1(sin.f64 ky)
32.9%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
32.9%1(sin.f64 kx)
32.9%1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes23.0ms (0.2%)

Memory
1.1MiB live, 39.2MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
Calls

9 calls:

5.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
2.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
2.0ms
(sin.f64 th)
2.0ms
(sin.f64 ky)
2.0ms
kx
Results
AccuracySegmentsBranch
17.5%1(sin.f64 kx)
17.5%1ky
17.5%1(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
17.5%1(sin.f64 ky)
17.5%1kx
17.5%1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
17.5%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
17.5%1th
17.5%1(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

bsearch40.0ms (0.4%)

Memory
-18.1MiB live, 19.3MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
38.0ms
0.00116387722251395
0.042789021568725466
Samples
14.0ms112×0valid
Compiler

Compiled 355 to 291 computations (18% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-sin: 6.0ms (55.9% of total)
ival-pow2: 2.0ms (18.6% of total)
ival-div: 1.0ms (9.3% of total)
ival-mult: 1.0ms (9.3% of total)
ival-sqrt: 1.0ms (9.3% of total)
ival-true: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.052552234601788976
0.06416321552782207
0.0ms
-0.10759713226591501
2.912981389329033e-304
0.0ms
-1.0
-0.9999999980049327
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.052552234601788976
0.06416321552782207
0.0ms
-0.10759713226591501
2.912981389329033e-304
0.0ms
-1.0
-0.9999999980049327
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.052552234601788976
0.06416321552782207
0.0ms
-0.10759713226591501
2.912981389329033e-304
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.06416321552782207
0.07410197222375689
0.0ms
-0.10759713226591501
2.912981389329033e-304
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.06416321552782207
0.07410197222375689
0.0ms
-0.10759713226591501
2.912981389329033e-304
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.9026888755685803e-5
0.0011638769597473104
0.0ms
5.163763896029663e-152
3.723446806792453e-149
Compiler

Compiled 18 to 18 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.07410197222375689
0.34324308115369717
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.052552234601788976
0.06416321552782207
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.9215513995271276e-5
0.052552234601788976
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch10.0ms (0.1%)

Memory
8.6MiB live, 8.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
9.0ms
4.258207817413463e-34
5.452074870968397e-33
Samples
5.0ms96×0valid
Compiler

Compiled 331 to 271 computations (18.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.0ms
ival-sin: 2.0ms (65% of total)
ival-mult: 1.0ms (32.5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify38.0ms (0.4%)

Memory
12.3MiB live, 50.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01511131
11901131
22161131
32411131
42571131
52651131
62681131
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 ky #s(literal 7194230188746725/4611686018427387904 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) #s(literal 2948408144391829/29484081443918291814387145163970850710288447034503440846689111720668938768688662906922865040450459121417721679927842538279457692421287442441886205089317937841010900992 binary64)) (*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 7378697629483821/147573952589676412928 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 3602879701896397/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2484552783462535/1461501637330902918203684832716283019655932542976 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(if (<=.f64 ky #s(literal 7194230188746725/4611686018427387904 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7194230188746725/4611686018427387904 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)))) #s(literal 2 binary64))) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) #s(literal 2948408144391829/29484081443918291814387145163970850710288447034503440846689111720668938768688662906922865040450459121417721679927842538279457692421287442441886205089317937841010900992 binary64)) (*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 7378697629483821/147573952589676412928 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (sin.f64 ky) #s(literal 2948408144391829/29484081443918291814387145163970850710288447034503440846689111720668938768688662906922865040450459121417721679927842538279457692421287442441886205089317937841010900992 binary64)) (*.f64 (*.f64 (/.f64 (neg.f64 #s(literal -1 binary64)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky)) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 7378697629483821/147573952589676412928 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 3602879701896397/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 3602879701896397/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 (/.f64 th (sin.f64 kx)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2484552783462535/1461501637330902918203684832716283019655932542976 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 2484552783462535/1461501637330902918203684832716283019655932542976 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th th)))

soundness1.5s (15.5%)

Memory
12.4MiB live, 1 156.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05813222
119493052
274823006
080462833
04992508
116322453
264922301
087972163
05413085
117772982
270762855
084022694
01349
02249
16249
233849
3290249
0828434
03171402
110111353
238471261
377941261
080971188
040224
068219
1226219
21347219
08664219
037200
062175
1187171
21049171
09456171
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 2 040 to 708 computations (65.3% saved)

preprocess217.0ms (2.2%)

Memory
-7.0MiB live, 146.2MiB allocated
Remove

(negabs ky)

(negabs th)

(abs kx)

Compiler

Compiled 2 492 to 498 computations (80% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...