Toniolo and Linder, Equation (3b), real

Time bar (total: 9.3s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze227.0ms (2.4%)

Memory
-38.7MiB live, 331.3MiB 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.6s (17.1%)

Memory
84.3MiB live, 2 152.6MiB allocated
Samples
1.2s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.0s
ival-sin: 606.0ms (60% of total)
ival-pow2: 177.0ms (17.5% of total)
ival-div: 60.0ms (5.9% of total)
ival-sqrt: 58.0ms (5.7% of total)
ival-mult: 57.0ms (5.6% of total)
ival-add: 41.0ms (4.1% of total)
ival-true: 7.0ms (0.7% of total)
ival-assert: 4.0ms (0.4% of total)
Bogosity

explain212.0ms (2.3%)

Memory
-1.5MiB live, 277.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
140-3(-5.324692582770364e-160 8.339693529039331e-294 8.641152355735375e-67)(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-rescue110
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))underflow78
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))underflow58
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))underflow11
Confusion
Predicted +Predicted -
+113
-0242
Precision
1.0
Recall
0.7857142857142857
Confusion?
Predicted +Predicted MaybePredicted -
+1103
-00242
Precision?
1.0
Recall?
0.7857142857142857
Freqs
test
numberfreq
0245
111
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
89.0ms512×0valid
Compiler

Compiled 152 to 43 computations (71.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 64.0ms
ival-sin: 38.0ms (59.4% of total)
ival-pow2: 11.0ms (17.2% of total)
ival-mult: 4.0ms (6.3% of total)
ival-sqrt: 4.0ms (6.3% of total)
ival-div: 3.0ms (4.7% of total)
ival-add: 3.0ms (4.7% of total)
ival-true: 1.0ms (1.6% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess78.0ms (0.8%)

Memory
-8.8MiB live, 29.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045153
1101147
2211147
3383147
4845147
51976147
62541147
72802147
82914147
92966147
102981147
112981147
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.5MiB live, 1.5MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.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))
Compiler

Compiled 16 to 13 computations (18.8% saved)

simplify3.0ms (0%)

Memory
5.7MiB live, 5.7MiB 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-diff5
(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

localize67.0ms (0.7%)

Memory
-14.1MiB live, 61.8MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.158535009768442
(*.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.228847509768442
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy0.2584762695368841
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy2.983272712143419
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Samples
59.0ms256×0valid
Compiler

Compiled 68 to 15 computations (77.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 49.0ms
ival-sin: 37.0ms (75.6% of total)
ival-pow2: 5.0ms (10.2% of total)
ival-div: 2.0ms (4.1% of total)
ival-mult: 2.0ms (4.1% of total)
ival-sqrt: 2.0ms (4.1% 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)

series75.0ms (0.8%)

Memory
-22.1MiB live, 37.6MiB 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 kx) #s(literal 2 binary64))
(pow.f64 (sin.f64 ky) #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
49.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 kx) 2) (pow (sin ky) 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 kx) 2) (pow (sin ky) 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 kx) 2) (pow (sin ky) 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 kx) 2) (pow (sin ky) 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 kx) 2) (pow (sin ky) 2))

simplify230.0ms (2.5%)

Memory
37.1MiB live, 226.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03171402
110111353
238651261
378121261
081151188
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)

rewrite200.0ms (2.1%)

Memory
-13.3MiB live, 217.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01349
02249
16249
234449
3297849
0826034
Stop Event
iter limit
node limit
iter limit
Counts
6 → 299
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 kx) #s(literal 2 binary64))
(pow.f64 (sin.f64 ky) #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 (+.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 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (+.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 (/.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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (/.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 #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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (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 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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)) (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 (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) (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal -1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64) (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (/.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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (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 binary64) (pow.f64 (cos.f64 kx) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 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 binary64) (pow.f64 (cos.f64 kx) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (*.f64 #s(literal 1 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 binary64) (pow.f64 (cos.f64 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 #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 binary64) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 kx)) (cos.f64 kx)))
(+.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 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1 binary64)) (sqrt.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 (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 (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 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #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 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 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 binary64) (pow.f64 (cos.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 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)))
(+.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))))

eval233.0ms (2.5%)

Memory
-5.2MiB live, 117.7MiB allocated
Compiler

Compiled 9 472 to 1 772 computations (81.3% saved)

prune35.0ms (0.4%)

Memory
22.9MiB live, 59.9MiB allocated
Pruning

18 alts after pruning (18 fresh and 0 done)

PrunedKeptTotal
New35218370
Fresh000
Picked101
Done000
Total35318371
Accuracy
100.0%
Counts
371 → 18
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.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.7%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
99.0%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
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))
74.0%
(*.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))
99.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))) (sin.f64 th))
49.6%
(*.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))
55.2%
(*.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))
32.5%
(*.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))
26.8%
(*.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))
30.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
47.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.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))))
45.1%
#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)))))))
92.2%
#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 (sin.f64 th) (sin.f64 ky))))
32.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 722 to 562 computations (22.2% saved)

simplify5.0ms (0.1%)

Memory
9.8MiB live, 9.8MiB 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
(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 #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
(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
036272
059262
177262
288262
392262
092262
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 #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
(/.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
#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 #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
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(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
#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)

localize229.0ms (2.5%)

Memory
-42.7MiB live, 174.9MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.228847509768442
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy2.5056985357793615
(*.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.391248963452036
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
accuracy31.775813975905898
#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 ky)
accuracy0.03125
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.2421875
(*.f64 (sin.f64 th) (sin.f64 ky))
accuracy2.486167285779362
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.158535009768442
(*.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.228847509768442
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy2.983272712143419
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
accuracy29.194672123686722
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
accuracy0.0
(sin.f64 th)
accuracy43.24838957959957
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
accuracy0.00390625
(sin.f64 ky)
accuracy0.03125
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.1484375
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.158535009768442
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Samples
161.0ms256×0valid
Compiler

Compiled 272 to 28 computations (89.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 129.0ms
ival-mult: 58.0ms (44.9% of total)
ival-hypot: 38.0ms (29.4% of total)
ival-sin: 16.0ms (12.4% of total)
ival-div: 6.0ms (4.6% of total)
ival-pow2: 4.0ms (3.1% of total)
ival-sqrt: 3.0ms (2.3% of total)
ival-add: 2.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)

series24.0ms (0.3%)

Memory
27.9MiB live, 27.9MiB allocated
Counts
17 → 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 #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))))
(/.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 (* (/ (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 kx) 2) (*.f64 kx kx))
(pow.f64 (sin.f64 ky) #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)))))
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))))))
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)))
(* (* 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))))))
(* 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))))))))
(/ (* 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)))
(* (sin ky) (sin th))
(* 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))))
(* 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))))))))
Calls

9 calls:

TimeVariablePointExpression
3.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) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (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 kx) 2) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))
3.0ms
th
@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) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (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 kx) 2) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))
2.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) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (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 kx) 2) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))
2.0ms
th
@-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) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (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 kx) 2) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))
2.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) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (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 kx) 2) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))

simplify295.0ms (3.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
04822364
116002289
263472179
086082038
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))))))
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)))
(* (* 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))))))
(* 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))))))))
(/ (* 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)))
(* (sin ky) (sin th))
(* 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))))
(* 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))))))))
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 (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (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 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.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
#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 #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)) (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 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 (*.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)) (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)
(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)) (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)))
(* (* (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))
(* (* 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 (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)
(/ 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/5040 binary64) (sin.f64 kx)) (/.f64 #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 #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 (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 th))
(*.f64 (sin.f64 th) ky)
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(*.f64 (sin.f64 th) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) 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 #s(literal 1/120 binary64) (*.f64 ky ky) #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 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th) (*.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 th) (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64))))) 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 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))) (fma.f64 (fma.f64 (*.f64 (sin.f64 kx) 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 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 (/.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 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 ky (/.f64 ky (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (/.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)) (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)))
(* (sin ky) (sin th))
(*.f64 (sin.f64 th) (sin.f64 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 (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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) 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 (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) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th 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))))) (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)
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(*.f64 (sin.f64 ky) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 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)

rewrite230.0ms (2.5%)

Memory
-6.4MiB live, 155.0MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
036193
059168
1195164
21131164
08653164
Stop Event
iter limit
node limit
iter limit
Counts
17 → 439
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 #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))))
(/.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 (* (/ (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 kx) 2) (*.f64 kx kx))
(pow.f64 (sin.f64 ky) #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)))))
Outputs
(*.f64 (/.f64 #s(literal -2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 th ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 th ky)) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th 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 #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 (*.f64 (sin.f64 th) (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 #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 (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 (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 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.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 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 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.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 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #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 th) (sin.f64 ky)) #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 th) (sin.f64 ky)))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (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 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (sin.f64 ky) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 th)))
(pow.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))) (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 th ky))) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.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 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -2 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky)))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 2 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 2 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))))))
(/.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))))) (*.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 th ky)))) (*.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 th ky)))) (*.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 th ky))))) (*.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 th ky)))) (*.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 th ky)))) (*.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 th ky)))) (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 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) (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 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (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 ky)))))
(/.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #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 th ky)))) #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 th ky)))) #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 th ky))) #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 th ky))) #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 th ky))) #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 th ky))) (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 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #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 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (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 ky)) (sin.f64 th)) #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 th ky))))))
(/.f64 #s(literal -1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (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 ky)) (sin.f64 th))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 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 th ky))))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (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 ky)) (sin.f64 th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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 th ky)) (*.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 th ky)) #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 th) (sin.f64 ky)) (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 ky)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.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 (sqrt.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) (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 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (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 (sin.f64 ky) #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 ky))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (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 ky)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 ky)) (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 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 ky) (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 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))) #s(literal 1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64) (log.f64 (sin.f64 ky))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 (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 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 (-.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 (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))) (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))) (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)))
(*.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 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 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 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 (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 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 (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 (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 (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 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 kx) (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 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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 #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)))) (sqrt.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (*.f64 #s(literal 1 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 (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 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (*.f64 #s(literal 1 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 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 #s(literal 1 binary64) (-.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 (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 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 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 (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 (+.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 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 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 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 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 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (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)) (sin.f64 th))
(sin.f64 th)
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 #s(literal -2 binary64) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 th ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 th ky)) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 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 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(*.f64 (/.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 th))
(*.f64 (sin.f64 th) (/.f64 (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) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 ky) (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #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 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 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 th ky)))) #s(literal -1 binary64)) (*.f64 #s(literal -2 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 th ky)))) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (neg.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky)))))
(/.f64 #s(literal -1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 th ky)))) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(/.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 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 th ky)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (/.f64 (cos.f64 (+.f64 th 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 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #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 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky))
(*.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (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) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(pow.f64 (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #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 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #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 ky) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #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 ky) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #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 ky) #s(literal 3 binary64))) (pow.f64 (pow.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #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)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (sin.f64 ky) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #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 ky) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #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 ky) #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 ky) #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 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #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 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #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 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #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 ky) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #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 ky) #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 ky) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #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 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #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 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 #s(literal -2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 th ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 th ky)) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th 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 #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 (*.f64 (sin.f64 th) (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 #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 (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 (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 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.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 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 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.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 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #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 th) (sin.f64 ky)) #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 th) (sin.f64 ky)))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (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 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (sin.f64 ky) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 th)))
(pow.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))) (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 th ky))) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.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 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -2 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky)))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 2 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 2 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))))))
(/.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))))) (*.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 th ky)))) (*.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 th ky)))) (*.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 th ky))))) (*.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 th ky)))) (*.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 th ky)))) (*.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 th ky)))) (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 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) (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 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (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 ky)))))
(/.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #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 th ky)))) #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 th ky)))) #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 th ky))) #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 th ky))) #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 th ky))) #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 th ky))) (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 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #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 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (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 ky)) (sin.f64 th)) #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 th ky))))))
(/.f64 #s(literal -1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (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 ky)) (sin.f64 th))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 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 th ky))))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (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 ky)) (sin.f64 th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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 th ky)) (*.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 th ky)) #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 th) (sin.f64 ky)) (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 ky)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #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 th ky)) #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 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 th ky)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 th ky)) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))))) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky)))) #s(literal -2 binary64))
(/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cos.f64 (+.f64 th ky)))) #s(literal 4 binary64))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #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 th ky))))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))))
(-.f64 (/.f64 (cos.f64 (-.f64 ky th)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 th ky)) #s(literal 2 binary64)))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 th ky)) #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (*.f64 th (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 #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 #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 th (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 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) (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 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 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 th (sin.f64 ky)))
(*.f64 (*.f64 th (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 th (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(*.f64 (sin.f64 ky) (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 th (sin.f64 ky)))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 th (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 th (sin.f64 ky))
(*.f64 (sin.f64 ky) th)
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -1 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 (-.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #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) ky))) #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) ky))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #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) ky)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky))))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #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 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 4 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #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) ky))))))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #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) ky)))))
(-.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) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #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) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 6 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)))
(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 #s(literal 2 binary64) ky))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))
(+.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)))
(*.f64 (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 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 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #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 (pow.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 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(*.f64 (sqrt.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 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 (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))) (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #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 ky) #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 4 binary64)) (pow.f64 (sin.f64 ky) #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 ky) #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 binary64)) #s(literal 1/2 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 (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 binary64)) #s(literal 1/2 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 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #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 ky) #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 4 binary64)) (pow.f64 (sin.f64 ky) #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 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(*.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/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 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(*.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/2 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 (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 -1 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 -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #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 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (/.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/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #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 ky)) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #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/2 binary64))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #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 ky)))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))
(fabs.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(exp.f64 (neg.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #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 ky)) #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 ky)) #s(literal -2 binary64)))) #s(literal -1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64)))

eval147.0ms (1.6%)

Memory
-23.3MiB live, 141.0MiB allocated
Compiler

Compiled 18 992 to 2 244 computations (88.2% saved)

prune64.0ms (0.7%)

Memory
14.4MiB live, 54.2MiB allocated
Pruning

39 alts after pruning (36 fresh and 3 done)

PrunedKeptTotal
New59024614
Fresh11213
Picked235
Done000
Total59339632
Accuracy
100.0%
Counts
632 → 39
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.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
73.9%
(/.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)))
37.0%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
30.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
99.7%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
55.2%
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
49.7%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.0%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
52.7%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
74.0%
(*.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))
99.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))) (sin.f64 th))
49.6%
(*.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))
55.2%
(*.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))
42.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))) (sin.f64 th))
42.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
42.8%
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
30.5%
(*.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))
32.5%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
55.2%
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))) (sin.f64 th))
55.1%
(*.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 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))
55.1%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
26.8%
(*.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))
30.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
46.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
50.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
50.2%
#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 ky))) (sin.f64 ky)))
41.5%
#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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))))
20.6%
#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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
21.2%
#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)))))
15.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 kx)))))
92.2%
#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 (sin.f64 th) (sin.f64 ky))))
32.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
13.2%
#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)))
15.9%
#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)))
16.2%
#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)))
16.2%
#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 838 to 1 340 computations (27.1% saved)

simplify11.0ms (0.1%)

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

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
cost-diff0
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
cost-diff0
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
cost-diff2
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
cost-diff0
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (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
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
cost-diff0
(sin.f64 th)
cost-diff0
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
040287
066262
199262
2125260
3156260
4198260
5262260
6291260
7321260
8321260
0321260
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(/.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)) #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) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(sin.f64 ky)
ky
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
th
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
#s(literal 1 binary64)
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.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))))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(sin.f64 ky)
ky
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 kx kx)
kx
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
th
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (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)) #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) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(sin.f64 ky)
ky
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
th
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
#s(literal 1 binary64)
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(sin.f64 ky)
ky
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 kx kx)
kx
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(sin.f64 th)
th

localize149.0ms (1.6%)

Memory
-14.4MiB live, 142.3MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.5872965413993718
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
accuracy2.3351305003995018
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
accuracy2.983272712143419
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
accuracy29.194672123686722
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
accuracy0.03125
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
accuracy0.11328125
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
accuracy0.1484375
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
accuracy31.775813975905898
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
accuracy0.00390625
(sin.f64 ky)
accuracy0.1484375
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
accuracy0.158535009768442
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
accuracy44.43087033173674
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
accuracy0.0
(pow.f64 th #s(literal 3 binary64))
accuracy0.05078125
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
accuracy31.724095947780558
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
accuracy43.24838957959957
#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 ky)
accuracy0.03125
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.12109375
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
accuracy0.1796875
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Samples
87.0ms256×0valid
Compiler

Compiled 279 to 33 computations (88.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 67.0ms
ival-sin: 18.0ms (27% of total)
ival-div: 9.0ms (13.5% of total)
ival-mult: 9.0ms (13.5% of total)
ival-hypot: 9.0ms (13.5% of total)
const: 7.0ms (10.5% of total)
ival-add: 4.0ms (6% of total)
ival-pow2: 4.0ms (6% of total)
ival-sqrt: 3.0ms (4.5% of total)
ival-pow: 3.0ms (4.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series41.0ms (0.4%)

Memory
11.1MiB live, 82.6MiB allocated
Counts
21 → 84
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(sin.f64 th)
(/.f64 (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)) #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) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(sin.f64 ky)
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.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))))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
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) (+ 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))))))
(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) (* (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))))))
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))))))))))))
(/ 1 (sin th))
(+ (* 1/2 (/ (pow kx 2) (* (pow (sin ky) 2) (sin th)))) (/ 1 (sin th)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (* (pow (sin ky) 2) (sin th)))) (* 1/2 (/ 1 (* (pow (sin ky) 2) (sin th)))))) (/ 1 (sin th)))
(+ (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (* (pow (sin ky) 2) (sin th)))) (* 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) (sin th)))))) (* 1/2 (/ 1 (* (pow (sin ky) 2) (sin th)))))) (/ 1 (sin th)))
(pow (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (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))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (/ 1 (sin ky)) (sqrt (+ (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)))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (/ 1 (* (sin ky) (sin th))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(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 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)
(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))))
(/ (* 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))))
(/ (sin kx) (* ky (sin th)))
(/ (+ (* (pow ky 2) (+ (* 1/6 (/ (sin kx) (sin th))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th))) ky)
(/ (+ (* (pow ky 2) (+ (* 1/6 (/ (sin kx) (sin th))) (+ (* 1/2 (/ 1 (* (sin kx) (sin th)))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (+ (* 7/360 (/ (sin kx) (sin th))) (* 1/12 (/ 1 (* (sin kx) (sin th)))))))))) (/ (sin kx) (sin th))) ky)
(/ (+ (* (pow ky 2) (+ (* 1/6 (/ (sin kx) (sin th))) (+ (* 1/2 (/ 1 (* (sin kx) (sin th)))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (+ (* 7/360 (/ (sin kx) (sin th))) (+ (* 1/12 (/ 1 (* (sin kx) (sin th)))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (+ (* 31/15120 (/ (sin kx) (sin th))) (+ (* 7/720 (/ 1 (* (sin kx) (sin th)))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (* (sin kx) (sin th))))))))))))))) (/ (sin kx) (sin th))) ky)
(+ (pow ky 2) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 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))))
(pow th 3)
(* (/ 1 (* th (sin ky))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ (+ (* 1/6 (* (/ (pow th 2) (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) th)
(/ (+ (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 7/360 (* (/ (pow th 2) (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/6 (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))) th)
(/ (+ (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 1/6 (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* 31/15120 (* (/ (pow th 2) (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 7/360 (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))) th)
(* -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
6.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 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) (+ (* (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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/ 1 (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky)))) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (pow (sin kx) 2))
4.0ms
ky
@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 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) (+ (* (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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/ 1 (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky)))) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (pow (sin kx) 2))
4.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 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) (+ (* (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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/ 1 (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky)))) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (pow (sin kx) 2))
4.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 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) (+ (* (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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/ 1 (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky)))) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (pow (sin kx) 2))
4.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 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) (+ (* (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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/ 1 (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky)))) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (pow (sin kx) 2))

simplify205.0ms (2.2%)

Memory
1.0MiB live, 241.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05362791
117192682
267322572
080312365
Stop Event
iter limit
node limit
Counts
84 → 82
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) (+ 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))))))
(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) (* (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))))))
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))))))))))))
(/ 1 (sin th))
(+ (* 1/2 (/ (pow kx 2) (* (pow (sin ky) 2) (sin th)))) (/ 1 (sin th)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (* (pow (sin ky) 2) (sin th)))) (* 1/2 (/ 1 (* (pow (sin ky) 2) (sin th)))))) (/ 1 (sin th)))
(+ (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (* (pow (sin ky) 2) (sin th)))) (* 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) (sin th)))))) (* 1/2 (/ 1 (* (pow (sin ky) 2) (sin th)))))) (/ 1 (sin th)))
(pow (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (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))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (/ 1 (sin ky)) (sqrt (+ (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)))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (/ 1 (* (sin ky) (sin th))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(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 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)
(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))))
(/ (* 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))))
(/ (sin kx) (* ky (sin th)))
(/ (+ (* (pow ky 2) (+ (* 1/6 (/ (sin kx) (sin th))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th))) ky)
(/ (+ (* (pow ky 2) (+ (* 1/6 (/ (sin kx) (sin th))) (+ (* 1/2 (/ 1 (* (sin kx) (sin th)))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (+ (* 7/360 (/ (sin kx) (sin th))) (* 1/12 (/ 1 (* (sin kx) (sin th)))))))))) (/ (sin kx) (sin th))) ky)
(/ (+ (* (pow ky 2) (+ (* 1/6 (/ (sin kx) (sin th))) (+ (* 1/2 (/ 1 (* (sin kx) (sin th)))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (+ (* 7/360 (/ (sin kx) (sin th))) (+ (* 1/12 (/ 1 (* (sin kx) (sin th)))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (+ (* 31/15120 (/ (sin kx) (sin th))) (+ (* 7/720 (/ 1 (* (sin kx) (sin th)))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (* (sin kx) (sin th))))))))))))))) (/ (sin kx) (sin th))) ky)
(+ (pow ky 2) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 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))))
(pow th 3)
(* (/ 1 (* th (sin ky))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ (+ (* 1/6 (* (/ (pow th 2) (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) th)
(/ (+ (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 7/360 (* (/ (pow th 2) (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/6 (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))) th)
(/ (+ (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 1/6 (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* 31/15120 (* (/ (pow th 2) (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 7/360 (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))) th)
(* -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 #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 (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (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 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.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
#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) (+ 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 (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)) (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 (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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #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)) (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)))
(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 (* -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 #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)) (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))
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)) (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)
(/ 1 (sin th))
(/.f64 #s(literal 1 binary64) (sin.f64 th))
(+ (* 1/2 (/ (pow kx 2) (* (pow (sin ky) 2) (sin th)))) (/ 1 (sin th)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (sin.f64 th)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (* (pow (sin ky) 2) (sin th)))) (* 1/2 (/ 1 (* (pow (sin ky) 2) (sin th)))))) (/ 1 (sin th)))
(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 th)) (*.f64 kx (/.f64 kx (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) (/.f64 #s(literal 1 binary64) (sin.f64 th)))
(+ (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (* (pow (sin ky) 2) (sin th)))) (* 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) (sin th)))))) (* 1/2 (/ 1 (* (pow (sin ky) 2) (sin th)))))) (/ 1 (sin th)))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (*.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 (pow.f64 (sin.f64 ky) #s(literal 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)) (*.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(+ (pow kx 2) (pow (sin ky) 2))
(fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(fma.f64 kx kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(fma.f64 kx kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 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))
(* (* (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)))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(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))
(* (* 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))))))
(* (/ 1 (* (sin ky) (sin th))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(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 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 (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)
(/ (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 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (sin.f64 kx)) #s(literal -1/2 binary64) (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.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)
(/ (+ (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 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (sin.f64 kx)) #s(literal -1/2 binary64) (fma.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)) (sin.f64 kx)) #s(literal -1/12 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)) (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 ky ky) (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.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)
(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 (*.f64 ky ky) #s(literal 1/2 binary64)) (/.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)) (sin.f64 kx)) (/.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)) (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)))))) (neg.f64 (+.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) (neg.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 (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)
(/ (* 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))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (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)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 kx) 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 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 (/.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 (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)
(/ (sin kx) (* ky (sin th)))
(/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))
(/ (+ (* (pow ky 2) (+ (* 1/6 (/ (sin kx) (sin th))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th))) ky)
(/.f64 (fma.f64 (fma.f64 (sin.f64 kx) (/.f64 #s(literal 1/6 binary64) (sin.f64 th)) (/.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (sin.f64 kx))) (*.f64 ky ky) (/.f64 (sin.f64 kx) (sin.f64 th))) ky)
(/ (+ (* (pow ky 2) (+ (* 1/6 (/ (sin kx) (sin th))) (+ (* 1/2 (/ 1 (* (sin kx) (sin th)))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (+ (* 7/360 (/ (sin kx) (sin th))) (* 1/12 (/ 1 (* (sin kx) (sin th)))))))))) (/ (sin kx) (sin th))) ky)
(/.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) (sin.f64 th)) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (sin.f64 kx)) (fma.f64 (sin.f64 kx) (/.f64 #s(literal 7/360 binary64) (sin.f64 th)) (/.f64 (/.f64 #s(literal 1/12 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (sin.f64 kx) (/.f64 #s(literal 1/6 binary64) (sin.f64 th)) (/.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (sin.f64 kx) (sin.f64 th))) ky)
(/ (+ (* (pow ky 2) (+ (* 1/6 (/ (sin kx) (sin th))) (+ (* 1/2 (/ 1 (* (sin kx) (sin th)))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (+ (* 7/360 (/ (sin kx) (sin th))) (+ (* 1/12 (/ 1 (* (sin kx) (sin th)))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (+ (* 31/15120 (/ (sin kx) (sin th))) (+ (* 7/720 (/ 1 (* (sin kx) (sin th)))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (* (sin kx) (sin th))))))))))))))) (/ (sin kx) (sin th))) ky)
(/.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) (sin.f64 th)) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (sin.f64 kx)) (fma.f64 (fma.f64 (/.f64 #s(literal -1/12 binary64) (sin.f64 th)) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (sin.f64 kx)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (/.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)) (sin.f64 kx)) (fma.f64 (sin.f64 kx) (/.f64 #s(literal 31/15120 binary64) (sin.f64 th)) (/.f64 (/.f64 #s(literal 7/720 binary64) (sin.f64 th)) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 (sin.f64 kx) (/.f64 #s(literal 7/360 binary64) (sin.f64 th)) (/.f64 (/.f64 #s(literal 1/12 binary64) (sin.f64 th)) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 (sin.f64 kx) (/.f64 #s(literal 1/6 binary64) (sin.f64 th)) (/.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (sin.f64 kx) (sin.f64 th))) ky)
(+ (pow ky 2) (pow (sin kx) 2))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(fma.f64 ky ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(fma.f64 ky ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (pow.f64 (sin.f64 kx) #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)
(pow th 3)
(pow.f64 th #s(literal 3 binary64))
(* (/ 1 (* th (sin ky))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(/ (+ (* 1/6 (* (/ (pow th 2) (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) th)
(/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) th)
(/ (+ (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 7/360 (* (/ (pow th 2) (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/6 (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))) th)
(/.f64 (fma.f64 (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (fma.f64 (*.f64 th th) #s(literal 7/360 binary64) #s(literal 1/6 binary64))) (*.f64 th th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) th)
(/ (+ (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 1/6 (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* 31/15120 (* (/ (pow th 2) (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 7/360 (* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))) th)
(/.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (fma.f64 (*.f64 th (/.f64 th (sin.f64 ky))) #s(literal 31/15120 binary64) (/.f64 #s(literal 7/360 binary64) (sin.f64 ky)))))) 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)))

rewrite178.0ms (1.9%)

Memory
19.5MiB live, 296.6MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
040247
066222
1243220
21405220
08193220
Stop Event
iter limit
node limit
iter limit
Counts
21 → 576
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(sin.f64 th)
(/.f64 (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)) #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) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(sin.f64 ky)
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.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))))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
Outputs
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))))
(*.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 1/2 binary64))) (sin.f64 (*.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 1/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 (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 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))) (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.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 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 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (sin.f64 ky)))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (neg.f64 (sin.f64 th))) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.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 (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)) (*.f64 (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 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th))))))
(*.f64 (-.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)) #s(literal 2 binary64))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 th)))
(*.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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.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 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (/.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 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.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)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (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 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th))))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (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 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky)))) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (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 1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (cos.f64 (+.f64 ky th)) #s(literal 1/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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))) #s(literal -1 binary64)))
(sin.f64 th)
(*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sqrt.f64 (sin.f64 ky))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.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)) (sqrt.f64 (sin.f64 ky))) (/.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)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(*.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal 1 binary64))
(/.f64 (neg.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(/.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
(/.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64)) (sin.f64 ky))
(/.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (neg.f64 (sin.f64 ky))))
(/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (sin.f64 ky)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal 1 binary64))
(neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(exp.f64 (-.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)) (log.f64 (sin.f64 ky))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(literal -1 binary64)))
(*.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 ky) #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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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 (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 (-.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 (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 (hypot.f64 (pow.f64 (sin.f64 ky) #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 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 ky) #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 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (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 (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 (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 ky) (sin.f64 kx)) #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 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 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 ky) (sin.f64 kx)) #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 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 (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 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 ky) (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 ky) (sin.f64 kx)) #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 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 (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 kx) #s(literal 4 binary64)) (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 (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 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 (-.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 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 ky) (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 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (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) (/.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)))) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.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 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 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) (pow.f64 (sin.f64 ky) #s(literal 2 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 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 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))) (/.f64 #s(literal 1 binary64) (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)))) (/.f64 #s(literal 1 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 (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))) (/.f64 #s(literal 1 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))) (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)))
(*.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)) #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 (*.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 (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 (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)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))) (-.f64 (*.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 (-.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))))) (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))
(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) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 (*.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 1/2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (*.f64 (sin.f64 ky) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (pow.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (pow.f64 (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (/.f64 #s(literal 1 binary64) (*.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal 2 binary64))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.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 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (*.f64 (pow.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(pow.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 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 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th)))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal 2 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal 2 binary64))))
(-.f64 (/.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (/.f64 (*.f64 (cos.f64 (+.f64 ky th)) #s(literal 1/2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (pow.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) (/.f64 (sin.f64 ky) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 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)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 th #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 th (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))) (/.f64 th (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (/.f64 th (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (/.f64 th #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.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 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 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 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (sin.f64 ky) #s(literal 1 binary64)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) th) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 th (neg.f64 (sin.f64 ky))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 th #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (/.f64 th (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (*.f64 (sin.f64 ky) th)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(*.f64 (sin.f64 ky) (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) th))
(*.f64 th (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) th)) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 th (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 th #s(literal 1 binary64))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 ky) th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 th (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 th #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (neg.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (neg.f64 (sin.f64 ky)) th)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (neg.f64 (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 th #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) th))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th)))
(/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (sqrt.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 (sqrt.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) (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 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (pow.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (neg.f64 (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (hypot.f64 (sin.f64 kx) (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 (sin.f64 ky) #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) #s(literal 1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64))
(*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(literal -1 binary64))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (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 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.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))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64))) (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) #s(literal 2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 #s(literal -2 binary64) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (*.f64 (sin.f64 (*.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 1/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 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 th)) (sin.f64 ky))
(*.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64)) (pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (sin.f64 ky))
(*.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1 binary64))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(pow.f64 (exp.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th)))) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1 binary64))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) (neg.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
(/.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64))) (neg.f64 (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky))))
(/.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(literal -1 binary64))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky)))
(/.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1 binary64))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))))
(/.f64 #s(literal -1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(neg.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
(-.f64 (/.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (*.f64 (cos.f64 (+.f64 ky th)) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th)))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sqrt.f64 (sin.f64 ky))) (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 th))))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 th)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 ky))))
(*.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 1 binary64)) (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (sin.f64 ky)) (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (sin.f64 th)))
(*.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (sin.f64 th)) (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (sin.f64 ky)))
(*.f64 (pow.f64 (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (pow.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal 2 binary64))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64)) (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky)))
(*.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (sin.f64 ky))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky)) (pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(*.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))))
(*.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (pow.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (pow.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))) #s(literal 1 binary64))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky)))
(*.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))
(/.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 th)))
(/.f64 (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))) (neg.f64 (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))) (neg.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))))
(/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)) (sin.f64 th))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))) (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))) (neg.f64 (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)) (*.f64 #s(literal 1 binary64) (sin.f64 ky)))
(/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)) (sin.f64 ky))
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))
(/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(-.f64 #s(literal 0 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))) #s(literal -1 binary64)))
(exp.f64 (neg.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th)))) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th)))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #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 ky) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 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 ky) #s(literal 3 binary64))) (pow.f64 (pow.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.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 ky) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 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 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (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 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #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 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #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 ky) #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 ky) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #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 ky) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))
(*.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(*.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))) (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1 binary64)))
(*.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(*.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (pow.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (fma.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1/2 binary64)) (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1/2 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (pow.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (fma.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1 binary64)) (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1 binary64)) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (fma.f64 (/.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (/.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (/.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (*.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (-.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (neg.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (neg.f64 (neg.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (-.f64 (pow.f64 (sin.f64 ky) #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 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (neg.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(/.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(fma.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1 binary64)) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(fma.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(fma.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #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) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(fma.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
(-.f64 (/.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(-.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))
(-.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (/.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(-.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(-.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #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)))
(*.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 ky) #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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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 (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 (-.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 (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 (hypot.f64 (pow.f64 (sin.f64 ky) #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 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 ky) #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 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (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 (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 (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 ky) (sin.f64 kx)) #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 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 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 ky) (sin.f64 kx)) #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 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 (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 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 ky) (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 ky) (sin.f64 kx)) #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 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 (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 kx) #s(literal 4 binary64)) (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 (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 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 (-.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 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 ky) (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 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (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) (/.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)))) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.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 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 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) (pow.f64 (sin.f64 ky) #s(literal 2 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 (pow (sin kx) 2) (*.f64 kx kx))

eval102.0ms (1.1%)

Memory
-23.0MiB live, 285.8MiB allocated
Compiler

Compiled 21 269 to 2 486 computations (88.3% saved)

prune96.0ms (1%)

Memory
10.1MiB live, 126.5MiB allocated
Pruning

55 alts after pruning (50 fresh and 5 done)

PrunedKeptTotal
New66530695
Fresh112031
Picked325
Done033
Total67955734
Accuracy
100.0%
Counts
734 → 55
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
73.9%
(/.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)))
37.0%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
30.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
52.9%
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
74.0%
(/.f64 (sin.f64 th) (/.f64 (/.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)))
32.5%
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)))
99.4%
(/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
34.1%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
30.0%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
55.2%
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
49.7%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
41.2%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
34.0%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
46.9%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky))))
44.9%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
30.5%
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
46.4%
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th))))
29.7%
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
50.8%
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) th)))
32.3%
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
74.0%
(*.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))
99.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))) (sin.f64 th))
49.6%
(*.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))
55.2%
(*.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))
42.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))) (sin.f64 th))
42.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
42.8%
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
30.5%
(*.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))
32.5%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
16.8%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
55.0%
(*.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 th)) (sin.f64 ky))
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.5%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
26.8%
(*.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))
30.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
94.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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.f64 th))
46.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
50.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
50.2%
#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 ky))) (sin.f64 ky)))
41.5%
#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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))))
20.6%
#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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
21.2%
#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)))))
15.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 kx)))))
32.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
13.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
15.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
16.2%
#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)))
16.2%
#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)))
16.2%
#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)))
16.2%
#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)))
16.2%
#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)))
8.9%
#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.0%
#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 2 724 to 2 001 computations (26.5% saved)

simplify12.0ms (0.1%)

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

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
cost-diff0
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
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) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
cost-diff0
(/.f64 (sin.f64 kx) ky)
cost-diff0
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
cost-diff0
(sin.f64 th)
cost-diff0
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
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-diff2
(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
(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
048338
079328
1109328
2130325
3142325
4143325
5183325
6183325
7214325
8235325
9262325
10266325
11269325
0269322
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 (*.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
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(sin.f64 th)
th
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
(/.f64 (sin.f64 kx) ky)
(sin.f64 kx)
kx
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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.f64 (*.f64 (sin.f64 ky) th) (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 (sin.f64 ky) th)
(sin.f64 ky)
ky
th
(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) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(sin.f64 kx)
kx
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(sin.f64 ky)
ky
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(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
(sin.f64 th)
th
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 (*.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
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(sin.f64 th)
th
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
(/.f64 (sin.f64 kx) ky)
(sin.f64 kx)
kx
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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#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) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (*.f64 (sin.f64 ky) th)))
(*.f64 (*.f64 (sin.f64 ky) th) (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 (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 (sin.f64 ky) th))
(*.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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(sin.f64 kx)
kx
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(sin.f64 ky)
ky
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(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
(sin.f64 th)
th

localize184.0ms (2%)

Memory
-39.3MiB live, 223.2MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.23046875
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))
accuracy0.28515625
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
accuracy2.983272712143419
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
accuracy29.194672123686722
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
accuracy2.5056985357793615
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
accuracy3.391248963452036
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
accuracy29.669406129562258
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy31.775813975905898
#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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
accuracy0.0
(sin.f64 kx)
accuracy0.12890625
(/.f64 (sin.f64 kx) ky)
accuracy0.1796875
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
accuracy45.80033492628469
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
accuracy0.02734375
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
accuracy0.17578125
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
accuracy31.724095947780558
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
accuracy43.24838957959957
#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.00390625
(sin.f64 ky)
accuracy0.03125
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.20703125
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.289726269536884
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
Samples
115.0ms256×0valid
Compiler

Compiled 291 to 39 computations (86.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 81.0ms
ival-div: 24.0ms (29.6% of total)
ival-sin: 17.0ms (21% of total)
ival-mult: 16.0ms (19.7% of total)
ival-pow2: 6.0ms (7.4% of total)
ival-add: 5.0ms (6.2% of total)
ival-sqrt: 5.0ms (6.2% of total)
ival-hypot: 4.0ms (4.9% of total)
const: 4.0ms (4.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series51.0ms (0.5%)

Memory
21.9MiB live, 60.2MiB allocated
Counts
22 → 108
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))
(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 #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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
(/.f64 (sin.f64 kx) 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.f64 (*.f64 (sin.f64 ky) th) (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 (sin.f64 ky) th)
(sin.f64 ky)
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(sin.f64 kx)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
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) (+ 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))))))
(/ kx ky)
(* kx (+ (* -1/6 (/ (pow kx 2) ky)) (/ 1 ky)))
(* kx (+ (* (pow kx 2) (- (* 1/120 (/ (pow kx 2) ky)) (* 1/6 (/ 1 ky)))) (/ 1 ky)))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/5040 (/ (pow kx 2) ky)) (* 1/120 (/ 1 ky)))) (* 1/6 (/ 1 ky)))) (/ 1 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 ky) (sin th))
(+ (* 1/2 (/ (pow kx 2) (* (sin ky) (sin th)))) (/ (sin ky) (sin th)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (* (sin ky) (sin th)))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
(+ (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (* (sin ky) (sin th)))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (* (sin ky) (sin th)))))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
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))))
(/ 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) (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)))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ (sin kx) ky)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (/ 1 (sin th)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sin kx)
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(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))))))
(/ (+ (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)))))))
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 th))
(+ (* 1/2 (/ (pow ky 2) (* (sin kx) (sin th)))) (/ (sin kx) (sin th)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (* (sin kx) (sin th)))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th)))
(+ (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (* (sin kx) (sin th)))))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (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))))
(/ 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 (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 (+ 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))
(* (/ 1 th) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* 1/6 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 7/360 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 31/15120 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 7/360 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))) th)
(* -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
13.0ms
ky
@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)))) (+ (* (* -1/6 (* th th)) th) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* -1/6 (* th th)) (/ (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 kx) 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) (sin ky) (/ (sin ky) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th))) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin kx) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin kx) 2))
10.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)))) (+ (* (* -1/6 (* th th)) th) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* -1/6 (* th th)) (/ (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 kx) 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) (sin ky) (/ (sin ky) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th))) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin kx) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin kx) 2))
4.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)))) (+ (* (* -1/6 (* th th)) th) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* -1/6 (* th th)) (/ (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 kx) 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) (sin ky) (/ (sin ky) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th))) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin kx) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin kx) 2))
4.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)))) (+ (* (* -1/6 (* th th)) th) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* -1/6 (* th th)) (/ (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 kx) 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) (sin ky) (/ (sin ky) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th))) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin kx) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin kx) 2))
4.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)))) (+ (* (* -1/6 (* th th)) th) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* -1/6 (* th th)) (/ (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 kx) 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) (sin ky) (/ (sin ky) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th))) (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin kx) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin kx) 2))

simplify259.0ms (2.8%)

Memory
-9.4MiB live, 230.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06133220
119843076
275633058
080312815
Stop Event
iter limit
node limit
Counts
108 → 105
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) (+ 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))))))
(/ kx ky)
(* kx (+ (* -1/6 (/ (pow kx 2) ky)) (/ 1 ky)))
(* kx (+ (* (pow kx 2) (- (* 1/120 (/ (pow kx 2) ky)) (* 1/6 (/ 1 ky)))) (/ 1 ky)))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/5040 (/ (pow kx 2) ky)) (* 1/120 (/ 1 ky)))) (* 1/6 (/ 1 ky)))) (/ 1 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 ky) (sin th))
(+ (* 1/2 (/ (pow kx 2) (* (sin ky) (sin th)))) (/ (sin ky) (sin th)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (* (sin ky) (sin th)))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
(+ (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (* (sin ky) (sin th)))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (* (sin ky) (sin th)))))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
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))))
(/ 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) (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)))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ (sin kx) ky)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (/ 1 (sin th)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sin kx)
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(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))))))
(/ (+ (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)))))))
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 th))
(+ (* 1/2 (/ (pow ky 2) (* (sin kx) (sin th)))) (/ (sin kx) (sin th)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (* (sin kx) (sin th)))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th)))
(+ (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (* (sin kx) (sin th)))))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (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))))
(/ 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 (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 (+ 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))
(* (/ 1 th) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* 1/6 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 7/360 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 31/15120 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 7/360 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))) th)
(* -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 #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 #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)) (sin.f64 ky)))) (*.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 (fma.f64 (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))) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
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) (+ 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 (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)) (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 (fma.f64 (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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #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)) (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))
(/ kx ky)
(/.f64 kx ky)
(* kx (+ (* -1/6 (/ (pow kx 2) ky)) (/ 1 ky)))
(fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky))
(* kx (+ (* (pow kx 2) (- (* 1/120 (/ (pow kx 2) ky)) (* 1/6 (/ 1 ky)))) (/ 1 ky)))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/120 binary64) ky) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/5040 (/ (pow kx 2) ky)) (* 1/120 (/ 1 ky)))) (* 1/6 (/ 1 ky)))) (/ 1 ky)))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx 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 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 th (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 (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) th) (*.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 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 kx kx) th)
(/ (sin ky) (sin th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(+ (* 1/2 (/ (pow kx 2) (* (sin ky) (sin th)))) (/ (sin ky) (sin th)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (*.f64 kx (/.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (* (sin ky) (sin th)))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
(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 th)) (*.f64 kx (/.f64 kx (sin.f64 ky))) (/.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (sin.f64 ky))) (*.f64 kx kx) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+ (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (* (sin ky) (sin th)))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (* (sin ky) (sin th)))))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
(fma.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (*.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)))) (/.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)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (*.f64 kx kx) (/.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (sin.f64 ky))) (*.f64 kx kx) (/.f64 (sin.f64 ky) (sin.f64 th)))
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)
(/ 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 (*.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 (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 (*.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 ky)))) (*.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))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(*.f64 (*.f64 (fma.f64 (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) #s(literal 1 binary64)) 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))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(/ (sin kx) ky)
(/.f64 (sin.f64 kx) 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))))))
(* (/ 1 (sin th)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(sin kx)
(sin.f64 kx)
(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 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))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.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)
(* 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 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (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/120 binary64)) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.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))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (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)) (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) (fma.f64 (*.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))))) (sin.f64 th) (fma.f64 #s(literal -1/240 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/5040 binary64)) (sin.f64 kx))))) (*.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 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.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))))
(/ (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 (fma.f64 (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))) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx))
(/ (+ (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 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (sin.f64 kx)) #s(literal -1/2 binary64) (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.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)
(/ (+ (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 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (sin.f64 kx)) #s(literal -1/2 binary64) (fma.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)) (sin.f64 kx)) #s(literal -1/12 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)) (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 ky ky) (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.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)) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/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))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 th (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)))) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal 1/120 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64)))) (*.f64 ky ky) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/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))))))) (* (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))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th (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))))) (fma.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 th (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)))) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/5040 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/240 binary64))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 th (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 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64))))) (*.f64 ky ky) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64)))) (*.f64 (/.f64 th (sin.f64 kx)) ky))
(* ky th)
(*.f64 ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #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 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 ky ky) (*.f64 #s(literal -1/6 binary64) th)) (*.f64 ky th))
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 kx) (sin th))
(/.f64 (sin.f64 kx) (sin.f64 th))
(+ (* 1/2 (/ (pow ky 2) (* (sin kx) (sin th)))) (/ (sin kx) (sin th)))
(fma.f64 (/.f64 (*.f64 ky ky) (sin.f64 th)) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (* (sin kx) (sin th)))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th)))
(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 th)) (*.f64 ky (/.f64 ky (sin.f64 kx))) (/.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (sin.f64 kx))) (*.f64 ky ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+ (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (* (sin kx) (sin th)))))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th)))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (sin.f64 th)) (/.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)) (sin.f64 kx)) (/.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)) (*.f64 (sin.f64 th) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (sin.f64 kx))) (*.f64 ky ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(*.f64 (*.f64 (fma.f64 (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) #s(literal 1 binary64)) 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 ky (/.f64 ky (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (/.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 (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 kx)) (*.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 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))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th) (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))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th) (*.f64 #s(literal -1/6 binary64) (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)))))))
(* 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 #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 th th) (*.f64 th 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))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (sin.f64 ky) th) 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 (*.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 (*.f64 (*.f64 th th) (*.f64 th 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))))) (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))
(* (/ 1 th) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* 1/6 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) th)
(/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 7/360 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))) th)
(/.f64 (fma.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (fma.f64 #s(literal 7/360 binary64) (*.f64 th th) #s(literal 1/6 binary64))) (*.f64 th th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 31/15120 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 7/360 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))) th)
(/.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (fma.f64 #s(literal 31/15120 binary64) (*.f64 th th) #s(literal 7/360 binary64))) (*.f64 th th)) (*.f64 th th))) 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 (/.f64 #s(literal 1 binary64) 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 (/.f64 #s(literal 1 binary64) th) th))) (pow.f64 th #s(literal 3 binary64)))

rewrite271.0ms (2.9%)

Memory
10.3MiB live, 168.5MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
048261
079251
1264243
21544243
08395240
Stop Event
iter limit
node limit
iter limit
Counts
22 → 346
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))
(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 #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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
(/.f64 (sin.f64 kx) 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.f64 (*.f64 (sin.f64 ky) th) (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 (sin.f64 ky) th)
(sin.f64 ky)
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(sin.f64 kx)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
Outputs
(*.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 (/.f64 (sin.f64 th) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))) (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.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 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #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)) (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.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 (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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th))) #s(literal -1 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 (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 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.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 (sin.f64 th) (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (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 (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 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (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) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.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 (sin.f64 ky) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (*.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (*.f64 (sin.f64 ky) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th))) #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 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.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)))
(*.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 (neg.f64 (sin.f64 th)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #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 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.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 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 (-.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 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #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 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #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 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #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)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #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)))
(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 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 (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 kx) (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 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 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 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 kx) (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 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 (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 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 (-.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))) (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 (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 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 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (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) (/.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)))) (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) (/.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)))) (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 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 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)))
(*.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))) (pow.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) #s(literal -1 binary64)))
(*.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 (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 (-.f64 (*.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)) (-.f64 (*.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 (-.f64 (*.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 (-.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 (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)) (-.f64 (*.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 (-.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 (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)) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))
(/.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))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))) (-.f64 (*.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 (-.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))))) (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)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) (*.f64 th th) 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 (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 (* (/ (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 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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #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 ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 th)) (pow.f64 (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(*.f64 (sin.f64 th) (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(neg.f64 (/.f64 (sin.f64 th) (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))) (/.f64 (sin.f64 th) (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))) #s(literal -1 binary64)))
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
(*.f64 (pow.f64 ky #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 ky #s(literal -1 binary64)) (sin.f64 kx))
(*.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (neg.f64 ky) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 kx) (pow.f64 ky #s(literal -1 binary64)))
(pow.f64 (/.f64 ky (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 ky))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 ky))))
(/.f64 (*.f64 (sin.f64 kx) #s(literal 1 binary64)) ky)
(/.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 ky)))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 ky))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 ky (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 ky (*.f64 (sin.f64 kx) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 ky (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 kx)))
(/.f64 (sin.f64 kx) ky)
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) ky))
(neg.f64 (/.f64 (sin.f64 kx) (neg.f64 ky)))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 ky)) (/.f64 (sin.f64 kx) (neg.f64 ky)))
(exp.f64 (*.f64 (log.f64 (/.f64 ky (sin.f64 kx))) #s(literal -1 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (*.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 ky)) th)
(*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 ky))
(*.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 ky) th))
(*.f64 (*.f64 (sin.f64 ky) 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 (sin.f64 ky) (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 th (*.f64 (sin.f64 ky) (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 (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 ky) th))) (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 (*.f64 (sin.f64 ky) th) #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 (*.f64 (sin.f64 ky) th)) (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 1 binary64) (*.f64 (sin.f64 ky) th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (*.f64 (*.f64 (sin.f64 ky) th) #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 (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 ky) 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 (*.f64 (sin.f64 ky) th) #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)))) (*.f64 (sin.f64 ky) th)))
(/.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(*.f64 (sin.f64 ky) th)
(*.f64 th (sin.f64 ky))
(*.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 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (sin.f64 ky) (neg.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (neg.f64 (sin.f64 th)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (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 th) #s(literal 1 binary64)))
(*.f64 (/.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 th))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (sin.f64 ky))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 #s(literal -1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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 (sin.f64 ky) #s(literal 1 binary64))) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 th))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 th))))
(/.f64 (neg.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (neg.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)) (*.f64 (sin.f64 ky) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(neg.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 th)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 th)))) (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 th)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th)))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) #s(literal -1 binary64)) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(*.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(pow.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)) #s(literal 1 binary64))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64))) (neg.f64 (sin.f64 th)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64)) (sin.f64 th))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (neg.f64 (neg.f64 (sin.f64 th))))
(/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 th))) #s(literal -1 binary64))
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (neg.f64 (sin.f64 th)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 th))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 th))) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (neg.f64 (sin.f64 th))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #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 ky) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 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 ky) #s(literal 3 binary64))) (pow.f64 (pow.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.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 ky) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 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 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (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 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #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 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #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 ky) #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 ky) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #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 ky) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 #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))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 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)))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 (sqrt.f64 (pow.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))) #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 (pow.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))) #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 (sqrt.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))) (sqrt.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 (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(*.f64 (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal 1/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)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(*.f64 (pow.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)) #s(literal 1/2 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/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.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))) #s(literal -1/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 (pow.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))) #s(literal -1/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)) (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 (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 #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 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (/.f64 #s(literal -1 binary64) (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)) (pow.f64 #s(literal 1 binary64) #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)) #s(literal 1 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/2 binary64)))
(pow.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #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 binary64))) #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 (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 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal 1/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 #s(literal -1 binary64))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.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 (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 (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) (sqrt.f64 (neg.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sqrt.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)))
(fabs.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)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64)))
(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)))
(exp.f64 (*.f64 (neg.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)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))

eval116.0ms (1.2%)

Memory
-4.8MiB live, 152.9MiB allocated
Compiler

Compiled 17 483 to 2 088 computations (88.1% saved)

prune86.0ms (0.9%)

Memory
-16.0MiB live, 179.8MiB allocated
Pruning

74 alts after pruning (66 fresh and 8 done)

PrunedKeptTotal
New51425539
Fresh44145
Picked235
Done055
Total52074594
Accuracy
100.0%
Counts
594 → 74
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
73.9%
(/.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)))
30.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
52.9%
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
74.0%
(/.f64 (sin.f64 th) (/.f64 (/.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)))
32.5%
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (sin.f64 ky)))
34.1%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
35.6%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
30.0%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
20.0%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
19.8%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
29.9%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 kx)))))
15.5%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
19.7%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
99.7%
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
48.2%
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)))) (sin.f64 th)))
55.2%
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
51.4%
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)))
32.4%
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
49.7%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
41.2%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
34.0%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
46.9%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky))))
44.9%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
29.7%
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
30.5%
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
46.4%
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th))))
50.8%
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) th)))
32.3%
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
29.9%
(*.f64 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
73.9%
(*.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))
32.3%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
74.0%
(*.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))
99.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))) (sin.f64 th))
49.6%
(*.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))
55.2%
(*.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))
42.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))) (sin.f64 th))
42.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
42.8%
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
30.5%
(*.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))
32.5%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
16.8%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
55.0%
(*.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 th)) (sin.f64 ky))
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.5%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
94.1%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.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))) (sin.f64 ky))
26.8%
(*.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))
30.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
19.6%
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))) #s(literal -1 binary64)))
46.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
20.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
50.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
50.2%
#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 ky))) (sin.f64 ky)))
23.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 ky)))
41.5%
#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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))))
19.7%
#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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
14.9%
#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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
21.2%
#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)))))
15.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 kx)))))
18.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
18.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
23.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
32.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
13.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
15.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
16.2%
#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)))
16.2%
#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)))
16.2%
#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)))
16.2%
#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)))
16.2%
#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)))
16.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
8.9%
#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.0%
#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 4 732 to 1 887 computations (60.1% saved)

regimes295.0ms (3.2%)

Memory
25.2MiB live, 578.4MiB allocated
Counts
98 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) th)))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)))) (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 (sin.f64 th) (/.f64 (/.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 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 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky)) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 th)) (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 ky) (sin.f64 kx)) (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) (/.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)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.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))))
(/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.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) (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))) (sin.f64 th))
(*.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))
#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 (sin.f64 th) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.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))) (sin.f64 ky))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Calls

9 calls:

44.0ms
(sin.f64 th)
34.0ms
ky
33.0ms
(sin.f64 kx)
33.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))
31.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)

regimes298.0ms (3.2%)

Memory
-2.9MiB live, 474.0MiB allocated
Counts
80 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) th)))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)))) (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 (sin.f64 th) (/.f64 (/.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)))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (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:

70.0ms
(sin.f64 ky)
42.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))
31.0ms
ky
29.0ms
(sin.f64 th)
28.0ms
th
Results
AccuracySegmentsBranch
86.0%2th
84.6%6(*.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))
97.4%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.9%3(sin.f64 ky)
94.8%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
94.8%2kx
95.9%2ky
94.8%3(sin.f64 kx)
86.0%3(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes180.0ms (1.9%)

Memory
-11.7MiB live, 311.8MiB allocated
Counts
76 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 1 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) th)))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)))) (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 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

8 calls:

23.0ms
ky
23.0ms
kx
22.0ms
(sin.f64 kx)
22.0ms
(sin.f64 th)
22.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
81.7%4(sin.f64 th)
79.2%2th
77.7%3(sin.f64 kx)
87.9%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)))))
78.1%3(sin.f64 ky)
75.9%3kx
74.1%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
79.8%3ky
Compiler

Compiled 26 to 38 computations (-46.2% saved)

regimes22.0ms (0.2%)

Memory
-3.8MiB live, 38.0MiB allocated
Counts
66 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 #s(approx (+ (* (sin ky) (sin ky)) (pow (sin kx) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (sin.f64 ky))))
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(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

19.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
87.6%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)

regimes21.0ms (0.2%)

Memory
4.4MiB live, 42.8MiB allocated
Counts
61 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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))
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(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

17.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
87.6%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)

regimes22.0ms (0.2%)

Memory
1.6MiB live, 39.5MiB allocated
Counts
60 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

19.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
87.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)

regimes20.0ms (0.2%)

Memory
-5.4MiB live, 33.4MiB allocated
Counts
59 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))) #s(literal -1 binary64)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

16.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
87.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)

regimes31.0ms (0.3%)

Memory
-10.0MiB live, 37.8MiB allocated
Counts
57 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
(/.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 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

15.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
86.2%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)

regimes145.0ms (1.6%)

Memory
28.5MiB live, 222.3MiB allocated
Counts
56 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

7 calls:

38.0ms
ky
19.0ms
(sin.f64 ky)
18.0ms
(sin.f64 th)
18.0ms
(sin.f64 kx)
17.0ms
th
Results
AccuracySegmentsBranch
71.6%4(sin.f64 kx)
64.1%4(sin.f64 ky)
64.5%4ky
64.7%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))
66.7%3(sin.f64 th)
69.5%3th
79.7%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 37 to 42 computations (-13.5% saved)

regimes19.0ms (0.2%)

Memory
-2.4MiB live, 35.6MiB allocated
Counts
53 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 ky))) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
#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 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

16.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
79.7%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)

regimes52.0ms (0.6%)

Memory
17.2MiB live, 99.1MiB allocated
Counts
52 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

3 calls:

18.0ms
kx
17.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)))))
13.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
60.4%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
61.1%3kx
70.6%3(/.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 18 to 20 computations (-11.1% saved)

regimes42.0ms (0.4%)

Memory
-13.2MiB live, 25.5MiB allocated
Counts
51 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.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) ky)) #s(literal 1/2 binary64)))))) (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) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)))))))
Outputs
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

14.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
70.6%3(/.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)

regimes146.0ms (1.6%)

Memory
19.9MiB live, 250.7MiB allocated
Counts
47 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.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 ky))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #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 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
Outputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

9 calls:

26.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)))))
16.0ms
th
16.0ms
(sin.f64 th)
16.0ms
ky
15.0ms
kx
Results
AccuracySegmentsBranch
51.7%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
51.7%2kx
51.3%3(sin.f64 ky)
49.9%3ky
47.8%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))
42.9%4(sin.f64 th)
42.8%3th
54.8%3(sin.f64 kx)
57.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 42 to 51 computations (-21.4% saved)

regimes16.0ms (0.2%)

Memory
-30.6MiB live, 17.5MiB allocated
Counts
31 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) ky)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (/.f64 (sin.f64 kx) ky) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 ky th)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 #s(approx (sin kx) (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)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (* (sin ky) th) (*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)) (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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal 1/120 binary64) ky)) kx) kx (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
Outputs
(/.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)) (sin.f64 th))
Calls

1 calls:

14.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
56.2%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 13 to 11 computations (15.4% saved)

regimes7.0ms (0.1%)

Memory
10.7MiB live, 10.7MiB 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) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) 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 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)))))
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

1 calls:

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
56.2%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 13 to 11 computations (15.4% saved)

regimes39.0ms (0.4%)

Memory
-4.2MiB live, 72.4MiB allocated
Counts
15 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
Outputs
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

7 calls:

7.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
6.0ms
ky
5.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))
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)))))
5.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
40.0%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))
42.1%2ky
41.9%2(sin.f64 ky)
39.3%2kx
39.3%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
40.2%3(sin.f64 kx)
45.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 39 to 44 computations (-12.8% saved)

regimes5.0ms (0.1%)

Memory
10.9MiB live, 10.9MiB allocated
Counts
12 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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 ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) th) (*.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)))
(/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 #s(literal 1 binary64) (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

1 calls:

4.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
43.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 13 to 11 computations (15.4% saved)

regimes34.0ms (0.4%)

Memory
-10.1MiB live, 68.7MiB allocated
Counts
8 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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

9 calls:

7.0ms
(sin.f64 kx)
5.0ms
(sin.f64 ky)
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))
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
th
Results
AccuracySegmentsBranch
37.5%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))
34.1%2(sin.f64 kx)
34.0%2kx
32.4%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
32.4%1(sin.f64 th)
32.4%1th
34.8%2(sin.f64 ky)
34.1%2ky
37.2%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 42 to 51 computations (-21.4% saved)

regimes19.0ms (0.2%)

Memory
19.7MiB live, 59.2MiB allocated
Counts
6 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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

7 calls:

3.0ms
(sin.f64 ky)
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))
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
ky
2.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
32.4%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
32.4%1kx
32.4%1(sin.f64 kx)
32.4%1ky
32.4%1(sin.f64 ky)
32.4%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.4%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 39 to 44 computations (-12.8% saved)

regimes59.0ms (0.6%)

Memory
-32.2MiB live, 46.9MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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) (*.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) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
Calls

9 calls:

3.0ms
(sin.f64 ky)
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
(/.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 th)
2.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
16.2%1(sin.f64 kx)
16.2%1ky
16.2%1kx
16.2%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))
16.2%1(sin.f64 th)
16.2%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)))))
16.2%1th
16.2%1(sin.f64 ky)
16.2%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

bsearch26.0ms (0.3%)

Memory
32.8MiB live, 32.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
24.0ms
2.3935682249492917e-8
0.0016311742174183572
Samples
18.0ms144×0valid
Compiler

Compiled 388 to 324 computations (16.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-sin: 7.0ms (50.9% of total)
ival-pow2: 3.0ms (21.8% of total)
ival-div: 1.0ms (7.3% of total)
ival-add: 1.0ms (7.3% of total)
ival-mult: 1.0ms (7.3% of total)
ival-sqrt: 1.0ms (7.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
2.0MiB live, 2.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9792038674987613
0.9872127105712074
0.0ms
3.0345512015251437e-16
4.104223350817965e-9
0.0ms
-0.0024222113887895067
4.265534777022829e-299
0.0ms
-0.9805508167477806
-0.9666014342578846
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.9MiB live, 1.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9792038674987613
0.9872127105712074
0.0ms
3.0345512015251437e-16
4.104223350817965e-9
0.0ms
-0.0024222113887895067
4.265534777022829e-299
0.0ms
-0.9805508167477806
-0.9666014342578846
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9792038674987613
0.9872127105712074
0.0ms
4.104223350817965e-9
0.002222382038297217
0.0ms
-0.0024222113887895067
4.265534777022829e-299
0.0ms
-0.9805508167477806
-0.9666014342578846
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch10.0ms (0.1%)

Memory
-40.2MiB live, 2.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9792038674987613
0.9872127105712074
0.0ms
4.104223350817965e-9
0.002222382038297217
9.0ms
-0.0024222113887895067
4.265534777022829e-299
0.0ms
-0.9805508167477806
-0.9666014342578846
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.7MiB live, 2.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9792038674987613
0.9872127105712074
0.0ms
4.104223350817965e-9
0.002222382038297217
0.0ms
-0.0024222113887895067
4.265534777022829e-299
0.0ms
-0.9805508167477806
-0.9666014342578846
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.6MiB live, 2.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9792038674987613
0.9872127105712074
0.0ms
4.104223350817965e-9
0.002222382038297217
0.0ms
-0.0024222113887895067
4.265534777022829e-299
0.0ms
-0.9805508167477806
-0.9666014342578846
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.6MiB live, 2.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9792038674987613
0.9872127105712074
0.0ms
4.104223350817965e-9
0.002222382038297217
0.0ms
-0.0024222113887895067
4.265534777022829e-299
0.0ms
-0.9805508167477806
-0.9666014342578846
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.6MiB live, 2.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9792038674987613
0.9872127105712074
0.0ms
3.0345512015251437e-16
4.104223350817965e-9
0.0ms
-0.0024222113887895067
4.265534777022829e-299
0.0ms
-0.9805508167477806
-0.9666014342578846
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.104223350817965e-9
0.002222382038297217
0.0ms
-0.9999999999866364
-0.9805508167477806
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.104223350817965e-9
0.002222382038297217
0.0ms
-0.9999999999866364
-0.9805508167477806
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.104223350817965e-9
0.002222382038297217
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.104223350817965e-9
0.002222382038297217
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.104223350817965e-9
0.002222382038297217
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
8.045743479045265e-24
3.1219542788006266e-22
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.104223350817965e-9
0.002222382038297217
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch17.0ms (0.2%)

Memory
-11.4MiB live, 25.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
16.0ms
9.958697207668827e-51
3.71119247180984e-48
Samples
11.0ms128×0valid
Compiler

Compiled 435 to 355 computations (18.4% saved)

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

simplify107.0ms (1.1%)

Memory
20.3MiB live, 56.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01892132
12232132
22552132
32812132
42942132
53152132
63252132
74042132
85402132
940012132
1076022132
Stop Event
node limit
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 7791904696734915/590295810358705651712 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (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 -2206763817411543/2251799813685248 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 -1152921504606847/576460752303423488 binary64)) (/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 2535301200456459/5070602400912917605986812821504 binary64)) (*.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)) (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 2206763817411543/2251799813685248 binary64)) (/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 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 -1152921504606847/576460752303423488 binary64)) (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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 2535301200456459/5070602400912917605986812821504 binary64)) (*.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)) (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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 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 -1152921504606847/576460752303423488 binary64)) (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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 3022314549036573/604462909807314587353088 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 -1152921504606847/576460752303423488 binary64)) (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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 3022314549036573/604462909807314587353088 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 -1152921504606847/576460752303423488 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 3022314549036573/604462909807314587353088 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 -1152921504606847/576460752303423488 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 3022314549036573/604462909807314587353088 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 -1152921504606847/576460752303423488 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 3022314549036573/604462909807314587353088 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 -1152921504606847/576460752303423488 binary64)) #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 ky))) (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 2535301200456459/5070602400912917605986812821504 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 2206763817411543/2251799813685248 binary64)) #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 ky))) (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 -4458563631096791/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 3022314549036573/604462909807314587353088 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 -4458563631096791/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/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 3022314549036573/604462909807314587353088 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 3022314549036573/604462909807314587353088 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 3022314549036573/604462909807314587353088 binary64)) (/.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)) (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 3022314549036573/604462909807314587353088 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 6805647338418769/680564733841876926926749214863536422912 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.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 3022314549036573/604462909807314587353088 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 7582485000136117/210624583337114373395836055367340864637790190801098222508621955072 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) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 ky #s(literal 7791904696734915/590295810358705651712 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (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 -2206763817411543/2251799813685248 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 -1152921504606847/576460752303423488 binary64)) (/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 2535301200456459/5070602400912917605986812821504 binary64)) (*.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)) (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 2206763817411543/2251799813685248 binary64)) (/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (sin th)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 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 -1152921504606847/576460752303423488 binary64)) (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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 2535301200456459/5070602400912917605986812821504 binary64)) (*.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)) (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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 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 -1152921504606847/576460752303423488 binary64)) (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th))) #s(literal -1 binary64)) (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 2535301200456459/5070602400912917605986812821504 binary64)) (*.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)) (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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 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 -1152921504606847/576460752303423488 binary64)) (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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 3022314549036573/604462909807314587353088 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 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 -1152921504606847/576460752303423488 binary64)) (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th))) #s(literal -1 binary64)) (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 3022314549036573/604462909807314587353088 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 -1152921504606847/576460752303423488 binary64)) (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) 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 3022314549036573/604462909807314587353088 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -1 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 -1152921504606847/576460752303423488 binary64)) (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (pow (sin kx) 2))) (* (sin th) (sin ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th))) #s(literal -1 binary64)) (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 3022314549036573/604462909807314587353088 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 -1152921504606847/576460752303423488 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 3022314549036573/604462909807314587353088 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -1 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 -1152921504606847/576460752303423488 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 3022314549036573/604462909807314587353088 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)) 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 -1152921504606847/576460752303423488 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 3022314549036573/604462909807314587353088 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -1 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 -1152921504606847/576460752303423488 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 3022314549036573/604462909807314587353088 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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 -1152921504606847/576460752303423488 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 3022314549036573/604462909807314587353088 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -1 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 -1152921504606847/576460752303423488 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 3022314549036573/604462909807314587353088 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 2206763817411543/2251799813685248 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 -1152921504606847/576460752303423488 binary64)) #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 ky))) (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 2535301200456459/5070602400912917605986812821504 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 2206763817411543/2251799813685248 binary64)) #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 ky))) (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 -2206763817411543/2251799813685248 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -1 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 -1152921504606847/576460752303423488 binary64)) #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 ky))) (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 2535301200456459/5070602400912917605986812821504 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 2206763817411543/2251799813685248 binary64)) #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 ky))) (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 -4458563631096791/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 3022314549036573/604462909807314587353088 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 -4458563631096791/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -1 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 3022314549036573/604462909807314587353088 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 -4458563631096791/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/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 3022314549036573/604462909807314587353088 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 3022314549036573/604462909807314587353088 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 3022314549036573/604462909807314587353088 binary64)) (/.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)) (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 3022314549036573/604462909807314587353088 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 6805647338418769/680564733841876926926749214863536422912 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.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 3022314549036573/604462909807314587353088 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 7582485000136117/210624583337114373395836055367340864637790190801098222508621955072 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) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))

soundness1.8s (19.2%)

Memory
17.5MiB live, 1 461.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036193
059168
1195164
21131164
08653164
06133220
119843076
275633058
080312815
040247
066222
1243220
21405220
08193220
04822364
116002289
263472179
086082038
01349
02249
16249
234449
3297849
0826034
048261
079251
1264243
21544243
08395240
05362791
117192682
267322572
080312365
03171402
110111353
238651261
378121261
081151188
Stop Event
fuel
iter limit
node limit
iter limit
node limit
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
Compiler

Compiled 4 125 to 1 489 computations (63.9% saved)

preprocess174.0ms (1.9%)

Memory
-3.9MiB live, 264.0MiB allocated
Remove

(negabs ky)

(negabs th)

(abs kx)

Compiler

Compiled 4 394 to 468 computations (89.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...