Toniolo and Linder, Equation (3b), real

Time bar (total: 4.4s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage

analyze195.0ms (4.4%)

Memory
-3.7MiB live, 334.2MiB allocated; 38ms collecting garbage
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.7s (39.1%)

Memory
44.0MiB live, 2 541.6MiB allocated; 379ms collecting garbage
Samples
1.4s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.1s
ival-sin: 765.0ms (66.9% of total)
ival-pow2: 171.0ms (14.9% of total)
ival-mult!: 92.0ms (8% of total)
ival-sqrt: 56.0ms (4.9% of total)
ival-div!: 39.0ms (3.4% of total)
ival-add!: 20.0ms (1.7% of total)
adjust: 2.0ms (0.2% of total)
Bogosity

explain191.0ms (4.3%)

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

Compiled 152 to 43 computations (71.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 51.0ms
ival-sin: 33.0ms (64.4% of total)
ival-pow2: 9.0ms (17.6% of total)
ival-sqrt: 3.0ms (5.9% of total)
ival-div!: 2.0ms (3.9% of total)
ival-mult!: 2.0ms (3.9% of total)
ival-add!: 1.0ms (2% of total)
adjust: 0.0ms (0% of total)

preprocess39.0ms (0.9%)

Memory
-11.4MiB live, 35.1MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
046166
192163
2224163
3435163
4959163
53019163
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
94.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))
Symmetry

(abs kx)

(negabs ky)

(negabs th)

Compiler

Compiled 32 to 26 computations (18.8% saved)

series33.0ms (0.8%)

Memory
18.1MiB live, 64.6MiB allocated; 3ms collecting garbage
Counts
13 → 68
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
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (sin th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (+ (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)))))))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (+ (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))))))))))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 1))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole 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))))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole 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))))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (sin ky)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (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))))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (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))))))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (pow (sin ky) 2)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (pow kx 2) (pow (sin ky) 2))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))))
#s(approx (pow (sin kx) 2) #s(hole binary64 (pow kx 2)))
#s(approx (pow (sin kx) 2) #s(hole binary64 (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))))
#s(approx (pow (sin kx) 2) #s(hole binary64 (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))))
#s(approx (pow (sin kx) 2) #s(hole binary64 (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))))
#s(approx (sin kx) #s(hole binary64 kx))
#s(approx (sin kx) #s(hole binary64 (* kx (+ 1 (* -1/6 (pow kx 2))))))
#s(approx (sin kx) #s(hole binary64 (* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))))
#s(approx (sin kx) #s(hole binary64 (* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))))
#s(approx kx #s(hole binary64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
#s(approx (pow (sin kx) 2) #s(hole binary64 (pow (sin kx) 2)))
#s(approx (sin kx) #s(hole binary64 (sin kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (/ (* ky (sin th)) (sin kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (* 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))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (* 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))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (/ ky (sin kx))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (* 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))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (* 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))))))
#s(approx (sin ky) #s(hole binary64 ky))
#s(approx (sin ky) #s(hole binary64 (* ky (+ 1 (* -1/6 (pow ky 2))))))
#s(approx (sin ky) #s(hole binary64 (* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))))
#s(approx (sin ky) #s(hole binary64 (* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))))
#s(approx ky #s(hole binary64 ky))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (sin kx)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (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))))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (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))))))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (pow (sin kx) 2)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (pow ky 2) (pow (sin kx) 2))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))))
#s(approx (pow (sin ky) 2) #s(hole binary64 (pow ky 2)))
#s(approx (pow (sin ky) 2) #s(hole binary64 (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))))
#s(approx (pow (sin ky) 2) #s(hole binary64 (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))))
#s(approx (pow (sin ky) 2) #s(hole binary64 (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))))
#s(approx (sin ky) #s(hole binary64 (sin ky)))
#s(approx (pow (sin ky) 2) #s(hole binary64 (pow (sin ky) 2)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole 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)))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole 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)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole 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))))))))))))))
#s(approx (sin th) #s(hole binary64 th))
#s(approx (sin th) #s(hole binary64 (* th (+ 1 (* -1/6 (pow th 2))))))
#s(approx (sin th) #s(hole binary64 (* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))))
#s(approx (sin th) #s(hole binary64 (* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))))
#s(approx th #s(hole binary64 th))
#s(approx (sin th) #s(hole binary64 (sin th)))
Calls

9 calls:

TimeVariablePointExpression
5.0ms
ky
@inf
((* (/ (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) ky (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow (sin kx) 2) (sin kx) kx 2 (pow (sin ky) 2) (sin th) th)
5.0ms
th
@inf
((* (/ (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) ky (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow (sin kx) 2) (sin kx) kx 2 (pow (sin ky) 2) (sin th) th)
4.0ms
ky
@0
((* (/ (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) ky (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow (sin kx) 2) (sin kx) kx 2 (pow (sin ky) 2) (sin th) th)
4.0ms
kx
@-inf
((* (/ (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) ky (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow (sin kx) 2) (sin kx) kx 2 (pow (sin ky) 2) (sin th) th)
4.0ms
kx
@inf
((* (/ (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) ky (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow (sin kx) 2) (sin kx) kx 2 (pow (sin ky) 2) (sin th) th)

rewrite260.0ms (5.8%)

Memory
-1.1MiB live, 321.5MiB allocated; 36ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04322436
04482305
126952273
0114521933
Stop Event
iter-limit
node-limit
iter-limit
Counts
81 → 164
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
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (sin th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (+ (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)))))))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (+ (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))))))))))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 1))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole 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))))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole 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))))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (sin ky)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (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))))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (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))))))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (pow (sin ky) 2)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (pow kx 2) (pow (sin ky) 2))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))))
#s(approx (pow (sin kx) 2) #s(hole binary64 (pow kx 2)))
#s(approx (pow (sin kx) 2) #s(hole binary64 (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))))
#s(approx (pow (sin kx) 2) #s(hole binary64 (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))))
#s(approx (pow (sin kx) 2) #s(hole binary64 (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))))
#s(approx (sin kx) #s(hole binary64 kx))
#s(approx (sin kx) #s(hole binary64 (* kx (+ 1 (* -1/6 (pow kx 2))))))
#s(approx (sin kx) #s(hole binary64 (* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))))
#s(approx (sin kx) #s(hole binary64 (* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))))
#s(approx kx #s(hole binary64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
#s(approx (pow (sin kx) 2) #s(hole binary64 (pow (sin kx) 2)))
#s(approx (sin kx) #s(hole binary64 (sin kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (/ (* ky (sin th)) (sin kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (* 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))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (* 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))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (/ ky (sin kx))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (* 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))))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(hole binary64 (* 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))))))
#s(approx (sin ky) #s(hole binary64 ky))
#s(approx (sin ky) #s(hole binary64 (* ky (+ 1 (* -1/6 (pow ky 2))))))
#s(approx (sin ky) #s(hole binary64 (* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))))
#s(approx (sin ky) #s(hole binary64 (* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))))
#s(approx ky #s(hole binary64 ky))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (sin kx)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (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))))))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) #s(hole binary64 (+ (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))))))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (pow (sin kx) 2)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (pow ky 2) (pow (sin kx) 2))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(hole binary64 (+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))))
#s(approx (pow (sin ky) 2) #s(hole binary64 (pow ky 2)))
#s(approx (pow (sin ky) 2) #s(hole binary64 (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))))
#s(approx (pow (sin ky) 2) #s(hole binary64 (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))))
#s(approx (pow (sin ky) 2) #s(hole binary64 (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))))
#s(approx (sin ky) #s(hole binary64 (sin ky)))
#s(approx (pow (sin ky) 2) #s(hole binary64 (pow (sin ky) 2)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole binary64 (* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole 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)))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole 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)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(hole 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))))))))))))))
#s(approx (sin th) #s(hole binary64 th))
#s(approx (sin th) #s(hole binary64 (* th (+ 1 (* -1/6 (pow th 2))))))
#s(approx (sin th) #s(hole binary64 (* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))))
#s(approx (sin th) #s(hole binary64 (* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))))
#s(approx th #s(hole binary64 th))
#s(approx (sin th) #s(hole binary64 (sin th)))
Outputs
(*.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 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(sin.f64 ky)
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1 binary64)))
ky
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #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/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 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (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) (pow.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 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(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 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (neg.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 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.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 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (+.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 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #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 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (+.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 kx) (sin.f64 ky)) #s(literal 2 binary64))))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (+.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 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(*.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 (log.f64 (sin.f64 kx))) #s(literal 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 (-.f64 (cos.f64 (-.f64 kx kx)) (cos.f64 (+.f64 kx kx))) #s(literal 2 binary64))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64))))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(sin.f64 kx)
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1 binary64)))
kx
#s(literal 2 binary64)
(*.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)))
(*.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 (log.f64 (sin.f64 ky))) #s(literal 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 (-.f64 (cos.f64 (-.f64 ky ky)) (cos.f64 (+.f64 ky 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))))
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64))))
(sin.f64 th)
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)) (fma.f64 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (fma.f64 (*.f64 (pow.f64 (*.f64 kx (sin.f64 ky)) #s(literal 2 binary64)) (*.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (sin.f64 th))) #s(literal 1/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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (sin.f64 th)) (*.f64 (*.f64 (pow.f64 (*.f64 kx (sin.f64 ky)) #s(literal 2 binary64)) (*.f64 (fma.f64 (/.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal -4 binary64)) (fma.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal -6 binary64)) (pow.f64 (sin.f64 ky) #s(literal -8 binary64))))) (sin.f64 th))) #s(literal -1/2 binary64))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th)))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(literal 1 binary64))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (pow.f64 (*.f64 kx (sin.f64 ky)) #s(literal 2 binary64)) (fma.f64 (pow.f64 (sin.f64 ky) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -4 binary64)) #s(literal 1/3 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)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (pow.f64 (sin.f64 ky) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (*.f64 (*.f64 (pow.f64 (*.f64 kx (sin.f64 ky)) #s(literal 2 binary64)) (fma.f64 (/.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal -4 binary64)) (fma.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal -6 binary64)) (pow.f64 (sin.f64 ky) #s(literal -8 binary64)))))) #s(literal -1/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)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 ky))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) #s(literal 1/2 binary64) (sin.f64 ky)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) #s(literal 1/3 binary64)) (*.f64 kx kx)) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (fma.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)))) (*.f64 kx kx)) (*.f64 #s(literal -1/2 binary64) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) #s(literal 1/3 binary64)))) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
#s(approx (pow (sin kx) 2) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx)))
#s(approx (pow (sin kx) 2) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx)))
#s(approx (pow (sin kx) 2) (*.f64 (fma.f64 (-.f64 (*.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)) (*.f64 kx kx)))
#s(approx (sin kx) kx)
#s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))
#s(approx (sin kx) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 kx kx)) #s(literal 1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx))
#s(approx (sin kx) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx)) #s(literal 1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx))
#s(approx kx kx)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 ky))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (+ (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))))
#s(approx (pow (sin kx) 2) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
#s(approx (sin kx) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (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 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (sin.f64 th)) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (*.f64 (fma.f64 (/.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -4 binary64)) #s(literal 2/45 binary64) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -6 binary64)) #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal -8 binary64))))) (sin.f64 th)) (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (*.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -4 binary64)) #s(literal 1/3 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 #s(literal -1/5040 binary64) (sin.f64 th)) (sin.f64 kx))))) (*.f64 ky ky))))) (*.f64 ky ky) (/.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx)))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (fma.f64 (*.f64 #s(literal -1 binary64) (*.f64 ky ky)) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -3 binary64)) #s(literal 1/2 binary64) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) ky))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (fma.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -3 binary64)) #s(literal 1/12 binary64))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -3 binary64)) #s(literal 1/2 binary64) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)))) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) ky))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (fma.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -3 binary64)) #s(literal 1/12 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (*.f64 (-.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (fma.f64 (/.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -4 binary64)) #s(literal 1/3 binary64))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -4 binary64)) #s(literal 2/45 binary64) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -6 binary64)) #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal -8 binary64))))) (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -6 binary64)) #s(literal 3/4 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -4 binary64)) #s(literal 1/3 binary64))))) (fma.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)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -3 binary64)) #s(literal 1/2 binary64) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)))) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) ky))
#s(approx (sin ky) ky)
#s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))
#s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky))
#s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky))
#s(approx ky ky)
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (/.f64 (*.f64 ky ky) (sin.f64 kx)) #s(literal 1/2 binary64) (sin.f64 kx)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64)) #s(literal 1/4 binary64) #s(literal 1/3 binary64)) (*.f64 ky ky)) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 2/45 binary64) (*.f64 (/.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64)) #s(literal 1/4 binary64) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 ky ky)) (*.f64 #s(literal -1/2 binary64) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64)) #s(literal 1/4 binary64) #s(literal 1/3 binary64)))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky)))
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.f64 (*.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)) (*.f64 ky ky)))
#s(approx (sin ky) (sin.f64 ky))
#s(approx (pow (sin ky) 2) (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 (sin.f64 ky) th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (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)) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 th th) (sin.f64 ky))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))) (*.f64 th th) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 th th) (sin.f64 ky))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))) (*.f64 th th) (*.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))) (*.f64 th th) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))) th))
#s(approx (sin th) th)
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
#s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th))
#s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th))
#s(approx th th)
#s(approx (sin th) (sin.f64 th))

eval22.0ms (0.5%)

Memory
2.3MiB live, 48.7MiB allocated; 3ms collecting garbage
Compiler

Compiled 4 263 to 909 computations (78.7% saved)

prune76.0ms (1.7%)

Memory
-33.5MiB live, 40.4MiB allocated; 90ms collecting garbage
Pruning

23 alts after pruning (23 fresh and 0 done)

PrunedKeptTotal
New13923162
Fresh000
Picked101
Done000
Total14023163
Accuracy
99.9%
Counts
163 → 23
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
99.6%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
85.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 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 kx) (sin.f64 ky)) #s(literal 2 binary64))))))) (sin.f64 th))
42.3%
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
85.6%
(*.f64 (/.f64 (sin.f64 ky) (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 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
48.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))))) #s(approx (sin th) th))
85.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))))) (sin.f64 th))
43.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.f64 (*.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)) (*.f64 ky ky)))))) (sin.f64 th))
84.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
45.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
43.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
46.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
46.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
54.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
41.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
40.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
31.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
22.3%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
28.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
99.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))) (sin.f64 th))
26.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
46.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
29.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 1 122 to 842 computations (25% saved)

rewrite78.0ms (1.8%)

Memory
18.5MiB live, 116.9MiB allocated; 8ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040316
069296
1197296
01364296
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
31 → 461
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))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64))
(*.f64 ky ky)
#s(literal -1/3 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(approx (sin th) 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)))))
(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 ky) #s(literal 2 binary64))
#s(approx (sin th) th)
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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 (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 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(sin.f64 ky)
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1 binary64)))
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)))
(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 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 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 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 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(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 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(sin.f64 kx)
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1 binary64)))
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(*.f64 (pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(*.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(*.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 (log.f64 (sin.f64 kx))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (sin.f64 kx)) #s(literal 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 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 (cos.f64 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(*.f64 (pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64)))
(pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/2 binary64)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 3 binary64))) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) (*.f64 ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 3 binary64))) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 2 binary64))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (neg.f64 ky)) (neg.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (fabs.f64 ky)) (fabs.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))
(fma.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))
(fma.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))
(fma.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 ky) (*.f64 (neg.f64 ky) (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))
(fma.f64 (fabs.f64 ky) (*.f64 (fabs.f64 ky) (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))
(fma.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (*.f64 ky ky) (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))
(fma.f64 ky (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(-.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) (*.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx))))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky)) ky))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64))) (*.f64 ky ky)))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (*.f64 ky ky)) (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 3 binary64)) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/27 binary64) (pow.f64 (*.f64 ky ky) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal -1 binary64)))
(/.f64 (fma.f64 #s(literal -1/27 binary64) (pow.f64 (*.f64 ky ky) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 2 binary64)) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)))))
(/.f64 (fma.f64 #s(literal -1/27 binary64) (pow.f64 (*.f64 ky ky) #s(literal 3 binary64)) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky))))
(fma.f64 (*.f64 #s(literal -1/3 binary64) (neg.f64 ky)) (neg.f64 ky) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/3 binary64) (fabs.f64 ky)) (fabs.f64 ky) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/3 binary64) ky) ky #s(literal 1 binary64))
(fma.f64 (neg.f64 ky) (*.f64 (neg.f64 ky) #s(literal -1/3 binary64)) #s(literal 1 binary64))
(fma.f64 (fabs.f64 ky) (*.f64 (fabs.f64 ky) #s(literal -1/3 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/3 binary64) (*.f64 (*.f64 ky ky) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64))
(fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64))
(fma.f64 ky (*.f64 (*.f64 #s(literal -1/3 binary64) ky) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 ky (*.f64 #s(literal -1/3 binary64) ky) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 2 binary64)) (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal -1 binary64))))
(-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/3 binary64) (*.f64 ky ky)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 ky ky)) #s(literal -1/3 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 ky) (*.f64 #s(literal -1/3 binary64) ky)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)))))
(+.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)))
(*.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (neg.f64 ky)))
(*.f64 (neg.f64 (fabs.f64 ky)) (neg.f64 (fabs.f64 ky)))
(*.f64 (fabs.f64 (fabs.f64 ky)) (fabs.f64 (fabs.f64 ky)))
(*.f64 (pow.f64 ky #s(literal 1 binary64)) (pow.f64 ky #s(literal 1 binary64)))
(*.f64 (pow.f64 ky #s(literal 1 binary64)) ky)
(*.f64 (neg.f64 ky) (neg.f64 ky))
(*.f64 (fabs.f64 ky) (fabs.f64 ky))
(*.f64 ky ky)
(pow.f64 (neg.f64 ky) #s(literal 2 binary64))
(pow.f64 (fabs.f64 ky) #s(literal 2 binary64))
(pow.f64 ky #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 ky) ky))
(neg.f64 (*.f64 ky (neg.f64 ky)))
(fabs.f64 (*.f64 ky ky))
(exp.f64 (*.f64 (log.f64 ky) #s(literal 2 binary64)))
#s(literal -1/3 binary64)
#s(literal 1 binary64)
(*.f64 #s(approx (sin th) 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))) #s(approx (sin th) th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(approx (sin th) th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(approx (sin th) th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky)) (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 (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 (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)))
(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 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 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 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 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(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 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (+.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64))
(/.f64 (+.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (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 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (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 (fma.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 4 binary64))
(/.f64 (fma.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) #s(literal 4 binary64))
(/.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 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 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 ky) (sin.f64 kx)) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (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))))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 ky))) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 ky))) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 ky))) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(-.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/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 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(-.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(-.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx))))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 ky))))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 ky))))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 ky)))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 ky))))
(+.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 6 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 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 6 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 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(+.f64 (/.f64 (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 (pow.f64 (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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(*.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(*.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 (log.f64 (sin.f64 ky))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (sin.f64 ky)) #s(literal 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 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/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/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/4 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/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 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 ky)))
(neg.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 ky))))
(-.f64 (/.f64 (cos.f64 #s(literal 0 binary64)) #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 1/2 binary64)))
(fabs.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.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))))
#s(approx (sin th) th)

eval49.0ms (1.1%)

Memory
11.4MiB live, 105.5MiB allocated; 8ms collecting garbage
Compiler

Compiled 10 382 to 1 857 computations (82.1% saved)

prune30.0ms (0.7%)

Memory
-29.8MiB live, 64.8MiB allocated; 3ms collecting garbage
Pruning

32 alts after pruning (29 fresh and 3 done)

PrunedKeptTotal
New39316409
Fresh51318
Picked235
Done000
Total40032432
Accuracy
100.0%
Counts
432 → 32
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
41.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
40.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
46.7%
(/.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
73.9%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))))) (sin.f64 th))
99.6%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
50.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
85.8%
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
43.3%
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
42.3%
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
93.8%
(*.f64 (/.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)))) (sin.f64 th))
43.1%
(*.f64 (/.f64 (sin.f64 ky) (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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) th))
85.6%
(*.f64 (/.f64 (sin.f64 ky) (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 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
37.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(approx (sin th) th))
37.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) #s(approx (sin th) th))
85.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))))) (sin.f64 th))
33.2%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
46.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
46.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
41.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
40.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
30.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
31.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
43.4%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
40.8%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
50.7%
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
22.3%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
28.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
99.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))) (sin.f64 th))
26.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
46.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
29.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 1 433 to 1 072 computations (25.2% saved)

rewrite36.0ms (0.8%)

Memory
16.6MiB live, 63.8MiB allocated; 1ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042288
073215
0252215
Stop Event
iter-limit
iter-limit
iter-limit
unsound
iter-limit
Counts
33 → 242
Calls
Call 1
Inputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
(sin.f64 ky)
ky
#s(literal -1 binary64)
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (sin.f64 th) ky)
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (sin th) th)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(approx (sin th) th))
(/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(sqrt.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))
(cos.f64 (*.f64 #s(literal 2 binary64) kx))
(*.f64 #s(literal 2 binary64) kx)
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)))))
(hypot.f64 (sin.f64 ky) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))
Outputs
(*.f64 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 ky))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 ky)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 (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/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 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))
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(exp.f64 (*.f64 (log.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))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
(sin.f64 ky)
ky
#s(literal -1 binary64)
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) ky)) (neg.f64 (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (sin.f64 th) ky)
(*.f64 ky (sin.f64 th))
(*.f64 #s(approx (sin th) 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))) #s(approx (sin th) th))
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.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)))
#s(approx (sin th) th)
(*.f64 #s(approx (sin th) 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))) #s(approx (sin th) th))
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.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)))
(pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(/.f64 (-.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64))) (*.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (+.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 ky) #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 kx) #s(literal 2 binary64)))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (*.f64 (pow.f64 (sin.f64 ky) #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 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (fma.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (pow.f64 (sin.f64 ky) #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 kx) #s(literal 2 binary64))) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 (sin.f64 ky) #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))))))
(fma.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 ky)))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 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 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64)))))
(fma.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64))
(fma.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)) #s(literal 1/2 binary64))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
#s(literal 1/2 binary64)
(*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))
(sin.f64 (fma.f64 #s(literal 2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (cos.f64 kx) (cos.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(cos.f64 (neg.f64 (*.f64 #s(literal 2 binary64) kx)))
(cos.f64 (*.f64 #s(literal 2 binary64) kx))
(*.f64 #s(literal 2 binary64) kx)
(*.f64 kx #s(literal 2 binary64))
(+.f64 kx kx)
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.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)))
(pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) (neg.f64 (sqrt.f64 (sin.f64 kx))))
(*.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) (fabs.f64 (sqrt.f64 (sin.f64 kx))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))
(sqrt.f64 (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64)))

eval21.0ms (0.5%)

Memory
-4.4MiB live, 44.8MiB allocated; 4ms collecting garbage
Compiler

Compiled 3 914 to 683 computations (82.5% saved)

prune23.0ms (0.5%)

Memory
2.9MiB live, 50.1MiB allocated; 1ms collecting garbage
Pruning

31 alts after pruning (26 fresh and 5 done)

PrunedKeptTotal
New1616167
Fresh42024
Picked325
Done033
Total16831199
Accuracy
100.0%
Counts
199 → 31
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
41.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
40.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
46.7%
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
73.9%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 th))
99.6%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
50.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
43.3%
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
42.3%
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
93.8%
(*.f64 (/.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)))) (sin.f64 th))
85.6%
(*.f64 (/.f64 (sin.f64 ky) (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 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
37.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(approx (sin th) th))
85.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))))) (sin.f64 th))
33.2%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
46.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
46.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
41.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
40.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
30.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
31.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
43.4%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
40.8%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
50.7%
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
22.3%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
28.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
94.3%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (sin.f64 ky))) (sin.f64 th))
99.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
99.1%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64))) (sin.f64 ky))) (sin.f64 th))
26.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
46.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
29.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 1 352 to 1 014 computations (25% saved)

rewrite34.0ms (0.8%)

Memory
5.9MiB live, 53.2MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042336
074306
0247306
Stop Event
iter-limit
iter-limit
iter-limit
unsound
iter-limit
Counts
34 → 187
Calls
Call 1
Inputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (/.f64 #s(literal 1 binary64) (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)))) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(literal 1 binary64)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
(sin.f64 th)
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)))) (/.f64 ky (sin.f64 kx)))
(/.f64 ky (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) #s(approx (sin th) th))
#s(approx (sin th) th)
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64))
#s(literal -1/3 binary64)
(*.f64 ky ky)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))))
(hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(sqrt.f64 (sin.f64 kx))
Outputs
(*.f64 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#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/2 binary64))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
(sin.f64 th)
th
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 ky) (neg.f64 (sin.f64 kx)))
(/.f64 ky (sin.f64 kx))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 #s(approx (sin th) th) (sin.f64 ky))
(*.f64 (sin.f64 ky) #s(approx (sin th) th))
#s(approx (sin th) th)
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky) #s(literal 3 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky) (-.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(fma.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))
(fma.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))
(fma.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))
(fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))
(fma.f64 ky (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky)
(*.f64 ky (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 (*.f64 ky ky) #s(literal -1/3 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 ky ky) #s(literal -1/3 binary64)) #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 ky ky) #s(literal -1/3 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 (*.f64 ky ky) #s(literal -1/3 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 ky ky) #s(literal -1/3 binary64)) #s(literal 1 binary64)))))
(fma.f64 (*.f64 #s(literal -1/3 binary64) ky) ky #s(literal 1 binary64))
(fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64))
(+.f64 (*.f64 (*.f64 ky ky) #s(literal -1/3 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 ky ky) #s(literal -1/3 binary64)))
#s(literal -1/3 binary64)
(*.f64 (neg.f64 ky) (neg.f64 ky))
(*.f64 (fabs.f64 ky) (fabs.f64 ky))
(*.f64 ky ky)
(pow.f64 ky #s(literal 2 binary64))
(*.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(*.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 2 binary64))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 4 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 kx kx)) (cos.f64 (+.f64 kx kx))) #s(literal 2 binary64))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64)))
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (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 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (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/2 binary64))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(*.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 (sin.f64 kx) #s(literal 1 binary64))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))
(sqrt.f64 (sin.f64 kx))

eval19.0ms (0.4%)

Memory
-5.1MiB live, 41.4MiB allocated; 2ms collecting garbage
Compiler

Compiled 4 240 to 631 computations (85.1% saved)

prune26.0ms (0.6%)

Memory
5.0MiB live, 54.9MiB allocated; 3ms collecting garbage
Pruning

31 alts after pruning (22 fresh and 9 done)

PrunedKeptTotal
New1641165
Fresh02121
Picked055
Done145
Total16531196
Accuracy
100.0%
Counts
196 → 31
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
41.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
40.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
46.7%
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
73.9%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 th))
99.6%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
50.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
43.3%
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
42.3%
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
93.8%
(*.f64 (/.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)))) (sin.f64 th))
85.6%
(*.f64 (/.f64 (sin.f64 ky) (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 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
37.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(approx (sin th) th))
85.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))))) (sin.f64 th))
33.2%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
46.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
46.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
41.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
30.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
31.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
43.4%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
33.2%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))))
40.8%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
50.7%
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
22.3%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
28.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
94.3%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (sin.f64 ky))) (sin.f64 th))
99.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
99.1%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64))) (sin.f64 ky))) (sin.f64 th))
26.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
46.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
29.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 1 871 to 804 computations (57% saved)

regimes113.0ms (2.5%)

Memory
-13.5MiB live, 221.7MiB allocated; 17ms collecting garbage
Counts
47 → 1
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
(/.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) #s(approx (sin th) th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(approx (sin th) th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(approx (sin th) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #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 (fma.f64 (-.f64 (*.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)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))) (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))))) #s(approx (sin th) th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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)) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 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))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
(*.f64 (/.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)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 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 kx) (sin.f64 ky)) #s(literal 2 binary64))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.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)))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Calls

9 calls:

17.0ms
(sin.f64 kx)
13.0ms
th
12.0ms
kx
12.0ms
(sin.f64 ky)
12.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
99.6%1(sin.f64 th)
99.6%1(sin.f64 kx)
99.6%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.6%1(sin.f64 ky)
99.6%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.6%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.6%1kx
99.6%1ky
99.6%1th
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes516.0ms (11.6%)

Memory
-57.9MiB live, 198.8MiB allocated; 877ms collecting garbage
Counts
28 → 5
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
(/.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) #s(approx (sin th) th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(approx (sin th) th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(approx (sin th) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #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 (fma.f64 (-.f64 (*.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)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

9 calls:

371.0ms
(sin.f64 th)
47.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)))))
44.0ms
(sin.f64 ky)
17.0ms
kx
8.0ms
th
Results
AccuracySegmentsBranch
76.9%4(sin.f64 th)
75.5%3(sin.f64 kx)
77.7%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
76.8%4(sin.f64 ky)
86.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)))))
71.4%4(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
75.5%2kx
74.9%2ky
74.1%2th
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes7.0ms (0.1%)

Memory
8.8MiB live, 8.8MiB allocated; 0ms collecting garbage
Counts
21 → 5
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
(/.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) #s(approx (sin th) th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(approx (sin th) th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(approx (sin th) th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

5.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
86.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)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes6.0ms (0.1%)

Memory
7.7MiB live, 7.7MiB allocated; 0ms collecting garbage
Counts
17 → 5
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
(/.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

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
86.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)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes13.0ms (0.3%)

Memory
16.8MiB live, 16.9MiB allocated; 0ms collecting garbage
Counts
14 → 4
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
(/.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

3 calls:

4.0ms
kx
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)))))
4.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
59.3%3kx
61.3%4(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
78.2%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 18 to 20 computations (-11.1% saved)

regimes32.0ms (0.7%)

Memory
-23.8MiB live, 45.2MiB allocated; 5ms collecting garbage
Counts
12 → 5
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
(/.f64 (*.f64 #s(approx (sin th) th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(approx (sin th) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

7 calls:

9.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)))))
4.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))
4.0ms
(sin.f64 th)
4.0ms
th
4.0ms
ky
Results
AccuracySegmentsBranch
61.3%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))
67.2%5(sin.f64 ky)
66.2%3(sin.f64 th)
59.1%4(sin.f64 kx)
66.3%2th
64.5%3ky
71.3%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)

regimes5.0ms (0.1%)

Memory
-39.9MiB live, 7.4MiB allocated; 2ms collecting garbage
Counts
9 → 5
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
Outputs
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

3.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
71.3%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)

regimes28.0ms (0.6%)

Memory
4.8MiB live, 52.6MiB allocated; 4ms collecting garbage
Counts
8 → 3
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (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))
Calls

9 calls:

5.0ms
(sin.f64 kx)
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
th
3.0ms
(sin.f64 ky)
3.0ms
kx
Results
AccuracySegmentsBranch
57.0%3(sin.f64 kx)
57.0%3kx
57.0%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
48.2%4(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
55.2%3(sin.f64 ky)
53.8%3ky
40.5%5(sin.f64 th)
39.3%4th
56.4%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 42 to 51 computations (-21.4% saved)

regimes11.0ms (0.2%)

Memory
23.0MiB live, 23.0MiB allocated; 0ms collecting garbage
Counts
5 → 2
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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

5 calls:

2.0ms
kx
2.0ms
(sin.f64 ky)
2.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
2.0ms
(sin.f64 kx)
2.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
47.0%2(sin.f64 ky)
52.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)))))
45.0%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
45.0%2kx
44.2%2(sin.f64 kx)
Compiler

Compiled 22 to 28 computations (-27.3% saved)

regimes3.0ms (0.1%)

Memory
8.0MiB live, 8.0MiB allocated; 0ms collecting garbage
Counts
3 → 2
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

2 calls:

1.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)))))
1.0ms
ky
Results
AccuracySegmentsBranch
45.6%2ky
51.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 14 to 14 computations (0% saved)

regimes2.0ms (0%)

Memory
3.7MiB live, 3.7MiB allocated; 0ms collecting garbage
Counts
2 → 2
Calls
Call 1
Inputs
#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)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

1.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
50.7%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes10.0ms (0.2%)

Memory
-23.2MiB live, 24.2MiB allocated; 1ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

9 calls:

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))
1.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)))))
1.0ms
(sin.f64 ky)
1.0ms
(sin.f64 th)
1.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
29.4%1(sin.f64 th)
29.4%1th
29.4%1(sin.f64 kx)
29.4%1kx
29.4%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
29.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))
29.4%1ky
29.4%1(sin.f64 ky)
29.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 42 to 51 computations (-21.4% saved)

bsearch1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999698669783
0.9999999999930914
0.0ms
8.961725929586904e-7
0.024718137387478842
0.0ms
-0.01997449259656672
1.824620341731642e-305
0.0ms
-1.0
-0.9999999999999998
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999698669783
0.9999999999930914
0.0ms
0.08449228122552664
0.10594310564134618
0.0ms
-0.01997449259656672
1.824620341731642e-305
0.0ms
-1.0
-0.9999999999999998
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999698669783
0.9999999999930914
0.0ms
8.961725929586904e-7
0.024718137387478842
0.0ms
-0.01997449259656672
1.824620341731642e-305
0.0ms
-1.0
-0.9999999999999998
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999698669783
0.9999999999930914
0.0ms
8.961725929586904e-7
0.024718137387478842
0.0ms
-0.01997449259656672
1.824620341731642e-305
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.0MiB live, 2.0MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999698669783
0.9999999999930914
0.0ms
8.961725929586904e-7
0.024718137387478842
0.0ms
2.4732996689215043e-186
1.8821438195060554e-183
0.0ms
-0.01997449259656672
1.824620341731642e-305
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999698669783
0.9999999999930914
0.0ms
8.961725929586904e-7
0.024718137387478842
0.0ms
2.4732996689215043e-186
1.8821438195060554e-183
0.0ms
-0.01997449259656672
1.824620341731642e-305
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3618858363905708e-89
1.4241092566221736e-89
0.0ms
-0.005623700430257644
2.9545656620856063e-308
Compiler

Compiled 19 to 18 computations (5.3% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.10594310564134618
0.1351788697117399
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.024718137387478842
0.08449228122552664
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
8.961725929586904e-7
0.024718137387478842
Compiler

Compiled 19 to 19 computations (0% saved)

derivations363.0ms (8.2%)

Memory
-14.8MiB live, 316.2MiB allocated; 36ms collecting garbage
Stop Event
fuel
Compiler

Compiled 1 182 to 119 computations (89.9% saved)

preprocess457.0ms (10.3%)

Memory
44.4MiB live, 634.7MiB allocated; 153ms collecting garbage
Remove

(negabs th)

(abs kx)

Compiler

Compiled 12 974 to 4 328 computations (66.6% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...